資源簡介
主成分分析的matlab代碼,適用于初學者,希望能幫助大家
代碼片段和文件信息
function?main()
%*************主成份分析************
%
%see?also?http://www.matlabsky.com
%
%讀入文件數據
X=load(‘data.txt‘);?
%==========方法1:求標準化后的協差矩陣再求特征根和特征向量=================
%標準化處理
[pn]=size(X);
for?j=1:n
????mju(j)=mean(X(:j));
????sigma(j)=sqrt(cov(X(:j)));
end
for?i=1:p
????for?j=1:n
????????Y(ij)=(X(ij)-mju(j))/sigma(j);?
????end
end
sigmaY=cov(Y);
%求X標準化的協差矩陣的特征根和特征向量
[Tlambda]=eig(sigmaY);
disp(‘特征根(由小到大):‘);
disp(lambda);
disp(‘特征向量:‘);
disp(T);
%方差貢獻率;累計方差貢獻率
Xsum=sum(sum(lambda2)1);
for?i=1:n
????fai(i)=lambda(ii)/Xsum;
end
for?i=1:n
????psai(i)=?sum(sum(lambda(1:i1:i)2)1)/Xsum;
end
disp(‘方差貢獻率:‘);
disp(fai);
disp(‘累計方差貢獻率:‘);
disp(psai);
%綜合評價....略
%%
%
%
%============方法2:求X的相關系數矩陣再求特征根和特征向量================
%X的標準化的協方差矩陣就是X的
- 上一篇:Q強化學習matlab源代碼
- 下一篇:APSK調制仿真
評論
共有 條評論