Clear Filters
Clear Filters

How can i use pca as a filter

1 view (last 30 days)
Smita chopade
Smita chopade on 8 Mar 2016
Commented: Tom Lane on 11 Mar 2016
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%.

Accepted Answer

Image Analyst
Image Analyst on 8 Mar 2016
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 Comments
Smita chopade
Smita chopade on 9 Mar 2016
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 on 11 Mar 2016
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%.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!