我有一组包含5000行和59种颜色的eeg记录数据集。 coloumns是eeg耳机的通道,行代表每个通道的信号幅度。现在我使用princomp来减小尺寸。但我在变量和观察中感到困惑,因为我有5000个元素的标签向量来分类数据,但如果我在5000x59使用princomp,我得到59x59矩阵,不能按给定标签分类,如果我在59x5000上应用命令数据我得到5000x5000矩阵,这意味着pca增加维度而不是减少。亲切地让我明白如何在我的数据中感知变量和观察。 日Thnx
答案 0 :(得分:0)
Matlab命令princomp
可以有多个返回值。如果我们将您的原始5000x59数据矩阵表示为D
,那么
[C, S] = princomp(D)
;
为您提供主成分系数C
(59x59)和实际主成分S
(5000x59),其中C
是从原始空间到主成分空间的投影,S
包含实际的主要组件作为其列。 3个矩阵的关系是
D * C
= S
顺便说一句,如果你只关心主要成分S
而不需要系数C
,你可以做
[~, S] = princomp(D)
;
有关详细信息,请查看官方Matlab princomp
doc。