PCA is a technique to find out which features are important for best describing the variance in a data set. It's most commonly used for reducing the dimensionality of a large data set so that it becomes more efficient to apply machine learning where the original data are inherently high dimensional (e.g. image recognition).
PCA has some limitations though because it relies on linear relationships between feature elements. As it also "hides" feature elements that contribute little to the variance in the data, it can sometimes eradicate a small but significant differentiator that would affect the performance of a machine learning model. Datasets For Machine Learning will be used quite in tandem when aspirants are coming to know about the domain.
Hope this answer helps you!
If you want to know more about Machine Learning then watch this video: