主成分分析法提取主要评价因素
具体步骤如下:
Step1:计算初始样本数据的均值和方差,极差标准化得到标准化数据。
Step2:计算 相关系数矩阵C,m为影响因素个数。C为正定对称矩阵。
Step3:计算C的特征值和特征向量
Step4:计算主成分信息贡献率,按照下式:
Step5:按照贡献率由大到小排列各因素,取贡献率之和大于0.8的两个因素即为所需的主成分。
代码:
clear,clc
% format compat
% load sn.txt %把原始的x1,x2,x3,x4,y的数据保存在纯文本文件sn.txt中
% 指标 指标
%对象
%对象
%
a=[263.862 1.61144 2.75468 0.266575
268.764 2.07218 2.61756 0.182597
261.196 1.59769 2.35037 0.182114
248.708 2.09609 2.85279 0.257724
253.365 1.69457 2.9492 0.189702
268.434 1.56819 2.78113 0.13252
258.741 2.14653 2.69111 0.136469
244.192 2.02156 2.22607 0.298066
219.738 1.61224 1.88599 0.166298
244.702 1.91477 2.25945 0.187569
245.286 2.12499 2.35282 0.161602
251.96 1.83714 2.53519 0.240271
251.164 1.74167 2.62961 0.211887
251.824 2.00133 2.62665 0.211991
257.68 2.14878 2.65686 0.203846];
maxa=max(a);
mina=min(a);
m=size(a,1);
n=size(a,2);
mm=maxa-mina;
x=zeros(m,n);
for i=1:n
x(:,i)=(a(:,i)-mina(i))./mm(i);
end
% x 标准化之后的样本矩阵
R=corrcoef(x);
[V,lamda]=eig(R);
la=0;
for i=1:n
la=la+lamda(i,i);
end
for i=1:n
eta(i)=lamda(i,i)./la;
end
eta