X = load('E:\Desktop\DataSet\TE\TRAIN\Tfault7.csv');
X=[1 2 1 1; %样本矩阵
3 3 1 2;
3 5 4 3;
5 4 5 4;
5 6 1 5;
6 5 2 6;
8 7 1 2;
9 8 3 7]
[Row Col]=size(X);
covX=cov(X); %求样本的协方差矩阵(散步矩阵除以(n-1)即为协方差矩阵)
[V lamda]=eigs(covX); %求协方差矩阵的特征值D和特征向量V
meanX=mean(X); %样本均值m
%所有样本X减去样本均值m,再乘以协方差矩阵(散步矩阵)的特征向量V,即为样本的主成份SCORE
tempX= repmat(meanX,Row,1); %remat是平铺函数repmat(A,m,n) 将A铺成m行,n列
SCORE2=(X-tempX)*V %主成份:SCORE
D = flipud(diag(lamda));
D
k=1;
while sum(D(1:k))/sum(D) <0.9
k = k +1;
end
k
pcaData2=SCORE2(:,1:k)