Matlab PCA scree plot -哪个变量最重要?

piv4azn7  于 7个月前  发布在  Matlab
关注(0)|答案(1)|浏览(77)

不是编码问题,而是“我明白我在做什么吗?“问题。
对最多7个变量的数据进行PCA分析,我想要一个scree图来显示每个变量对数据方差的影响程度。
我通过使用来制作一个scree plot:

[coeff,score,latent,~,explained] = pca(X);

    bar(explained)

我从文档中的理解是,输出都是排序的“列是按组件方差的降序排列的”,所以,我怎么知道哪个变量实际上占了最大的方差?比如我的数据有7个变量,那么我怎么知道它是变量3而不是变量6呢?如果它不排序,那就很明显了,但如果是降序排序,我怎么知道呢?
Matlab PCA文档

xt0899hw

xt0899hw1#

当你计算PCA时,你得到了一个新的坐标系。这个新坐标系中的每个维度都解释了一定量的输入方差,并根据该数量进行排序。
coeff(:,1)是第一个PCA轴的方向,以输入轴表示。此轴与数据中的最大方差对齐。explained(1)是由该轴表示的数据中总方差的分数。
因此,explained的排序方式与coeff的列相同,并且与它们相关。它不引用输入变量。

相关问题