【20211208】【Matlab】使用Matlab中的pca函数实现数据降维,并将数据可视化

1. pca函数使用方法

        [coeff, score] = pca(data);

(1)输入参数

        data:待降维的数据集

(2)输出参数

        coeff:主成分分量,即样本协方差矩阵的特征向量;

        score:主成分,即样本在低维空间的投影,也就是降维后的数据。

注意:score 的维度和原始样本 data 的维度一致,如果想要降到 k 维,只需选取 score 的前 k 列即可~

%%
clear; clc; close all; warning off;

%% 加载数据集
load('DataSet_UCIwine');

%% PCA降维
[coeff, score]= pca(data);  % coeff是主成分分量,即样本协方差矩阵的特征向量;score是主成分,即data在低维空间的投影,也就是降维后的数据,维度和data相同,若想降维到k维,只需要取前k列即可。
res = score(:, 1:3);  % 降维后的数据

2. wine数据可视化

        因为数据是三维数据,所以使用 scatter3() 实现数据可视化。

%% 原始数据可视化
figure(1);
s = 50 * ones(numel(label), 1);  % numel():求数组元素的数目
color = label;  % 设置散点的颜色为标签颜色,label为数据标签(三分类数据展示出三种不同的颜色,方便观察数据集)
scatter3(res(:, 1), res(:, 2), res(:, 3), s, color);
xlabel('dim-1'); ylabel('dim-2'); zlabel('dim-3'); 
title(['PCA降维后的数据分布   数据集样本个数=', num2str(numel(label))]);

         (参考:利用Matlab中的pca函数进行数据降维

        (参考:scatter3

        (参考:numel

  • 18
    点赞
  • 207
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Satisfying

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值