6
我在MATLAB中实现PCA算法。我看到了两个不同的方法来计算的协方差矩阵:在Matlab中计算协方差矩阵
C = sampleMat.' * sampleMat ./ nSamples;
和
C = cov(data);
的是这两种方法之间的区别?
PS 1:当我使用cov(data)
是不必要的:
meanSample = mean(data,1);
data = data - repmat(data, nSamples, 1);
PS 2:
在第一种方法中,我应该使用nSamples
或nSamples - 1
?
注意复杂数字与问题中的代码处理方式不同。 –
@ BenVoigt:真的,转置是不同的,谢谢。编辑... –
根据您的编辑2,使用第一行更好吗?哪一个是正确的,或者它们是否相同以使用共轭转置和转置来计算协方差? – kamaci