How can i use pca as a filter

3 次查看(过去 30 天)
I am using PCA as filter. But as data should be obtained with maximum principle component having 90% contribution. But in my code i am not getting contribution above 90%. As i am increasing my no of observation contribution is decresing. I have used matlab function: pca(x). Please guide me what should i do to retain contribution level above 90%.

采纳的回答

Image Analyst
Image Analyst 2016-3-8
Use more principal components. If you're just using the first (strongest) principal component, then yeah, it's quite possible it doesn't explain more than 90% of the variation/pattern/shape of the input observations. If you use all of them then it will explain 100%. So use as many of them as you need to reach 90%.
  2 个评论
Smita chopade
Smita chopade 2016-3-9
As i am increasing my no of aobservation variation is decreasing. For testing purpose i simply take values of some variables with 4 observation i.e. my matrix becomes 6x4. In this i found that if i keep numbers varying too much from the number in last observation then contribution increase but if i keep same or nearer value to the last observation then contribution decreases. As i am working for the data which is not varying too much i am getting lesser contribution. In th9s case suggest me what should I do?
Tom Lane
Tom Lane 2016-3-11
It's not clear to me what you want. You should know that PCA thinks of the rows as observations, so a 6x4 matrix has 6 observations. The third output from PCA is the variances of the 4 components. The total of them is the total variance. By keeping all 4 you explain 100%.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Dimensionality Reduction and Feature Extraction 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by