一、主成分分析
1.简述
主成分分析是一种统计方法,通过正交变换将一组可能存在相关性的变量转换成一组线性不相关的变量,转换后的这组变量叫主成分。
PCA的思想是将n维特征映射到m维上(m<n),这m维是全新的正交特征,称为主成分,这m维的特征是重新构造出来的,不是简单的从n维特征中减去n-m维特征。PCA的核心思想就是将数据沿最大方向投影,数据更易于区分。
主成分矩阵(n * p)由原数据矩阵(n * p)点乘特征向量矩阵(p * p)得来(n为数据的个数,p为数据的属性个数),表示特征向量将原数据沿特征值最大(即方差最大)的方向投影,得到主成分。特征值是主成分贡献率的体现,一个主成分的特征值越大,该主成分的贡献率就越大。
2.代码
clear
clc
%传入数据集
% openExample("spectra.mat")
load spectra.mat
%调用主成分分析函数
%四个返回值分别是特征向量、主成分、特征值、特征值所占百分比
[PCA_Vector, PCA_Score, PCA_Var, ~, explained, ~] = pca(NIR);
%绘图
pareto(explained);
xlabel('主成分');
ylabel('贡献率(%)');
title('主成分贡献率');