主成分分析法matlab代码
时间: 2023-09-21 07:05:19 浏览: 115
主成分分析法MATLAB代码
3星 · 编辑精心推荐
以下是主成分分析法的Matlab代码:
% 生成数据
data = randn(100, 5);
% 计算数据的均值
mu = mean(data);
% 中心化数据
data_centered = data - mu;
% 计算协方差矩阵
covariance_matrix = cov(data_centered);
% 计算特征值和特征向量
[eigenvectors, eigenvalues] = eig(covariance_matrix);
% 将特征值从大到小排序
[eigenvalues_sorted, index] = sort(diag(eigenvalues), 'descend');
eigenvectors_sorted = eigenvectors(:, index);
% 选择前k个主成分
k = 2;
principal_components = eigenvectors_sorted(:, 1:k);
% 转换数据到主成分空间
data_transformed = data_centered * principal_components;
% 绘制图形
scatter(data_transformed(:, 1), data_transformed(:, 2));
阅读全文