How can I perform a PCA analysis over 3D data?

27 次查看(过去 30 天)
Hello everyone. I have a 100*50*20 matrix which contains measurements over an area of space. 100 is the number of latitudes, 50 is the number of longitudes and 20 is the number of times each measurement has been performed. I want to perform PCA over this data, but I would like to obtain eigensurfaces instead of eigenvectors, the regular PCA works just fine over a belt of constant latitude or longitude with all the 20 times; however, if I try to use it over the 3D matrix, I get an error. My next attempt has been to use reshape to merge latitude and longitude in a vector. The obtained coeff matrix obtained has a size of 20*20, not something I can plot over a map.
Can anyone please tell me if I can plot the eigensurfaces to see a 2D image for each time? Thanks.

采纳的回答

Image Analyst
Image Analyst 2018-7-16
See my attached 3-D PCA demo. My 3-D array is an RGB image.
  6 个评论
Image Analyst
Image Analyst 2018-11-13
I have not worked in the compression field. The existing tried and true methods built into other functions are fine with me and I have no desire or need to improve upon those. They meet my needs so I don't need to research better ones.
Sanchay Mukherjee
Sanchay Mukherjee 2022-1-31
I am trying to do a similar thing. I have a matrix of 200*500*3, where 200*500 is the data for corresponding 3 features (like a 3D plot). I want to find out the relative importance of the 3 features. Do you have any suggestions how should I proceed?
Thanks

请先登录,再进行评论。

更多回答(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