%% I. 清空环境变量
%% PCA-BP
%% I. 清空环境变量
clear all
clc
%% 导入数据
X = xlsread('inputd');
%% PCA主成分降维
[Z,MU,SIGMA]=zscore(X);
%% 计算相关系数矩阵
Sx=cov(Z); % 相关系数矩阵计算
%% 计算相关系数矩阵的特征值特征向量
[V,D] = eig(Sx); %计算相关系数矩阵的特征向量及特征值
eigValue = diag(D); %将特征值提取为列向量
[eigValue,IX]=sort(eigValue,'descend');%特征值降序排序
eigVector=V(:,IX); %根据排序结果,特征向量排序
C=sort(eigValue,'descend'); %特征值进行降序排序
rat1=C./sum(C) %求出排序后的特征值贡献率
rat2=cumsum(C)./sum(C) %求出排序后的累计贡献率
result1(1,:) = {'特征值','贡献率','累计贡献率'}; %细胞矩阵1第一行标题
result1(2:(length(D)+1),1) = num2cell(C); %将特征值放到第一列
result1(2:(length(D)+1),2) = num2cell(rat1); %将贡献率放到第二列
result1(2:(length(D)+1),3) = num2cell(rat2) %将累计贡放到第三列