(转载)matlab中pca函数的参数含义

目录

1.PCA函数的输入与输出参数

2.PCA函数的使用方法

参考文献:


1.PCA函数的输入与输出参数

function [coeff, score, latent, tsquared, explained, mu] = pca(x,varargin)

输入参数:

X,数据集,假设样本的个数为N,每个样本的特征个数为P,则 X是N×P的矩阵。

输出参数:

COEFF,返回N×P数据矩阵X的主成分系数。X的行对应于观测值,列对应于变量。每列系数包含一个主成分的系数。各列按主成分方差(latent)降序排列。默认情况下,PCA将数据居中并使用奇异值分解算法。对于非默认选项,请使用名称/值对参数。

SCORE,返回主成分得分,它是X在主成分空间中的表示。score的行对应观察值,列对应主成分。中心数据可以用SCORE*COEFF'重建。

LATENT,返回每个主成分方差,即X的协方差矩阵的特征值,特征值从大到小进行排序。

TSQUARED,返回X中每个观测值的Hotelling T平方统计值。PCA使用所有主分量计算TSQUARED(在整个空间中计算),即使请求的组件较少(请参见下面的“NumComponents”选项)。对于缩小空间中的TSQUARED,使用MAHAL(SCORE,SCORE)。

EXPLAINED,返回一个向量,其中包含每个主成分方差占总方差的百分比。

MU,“Centered”设置为true时返回估计的平均值MU;设置为false时返回所有零。

2.PCA函数的使用方法

clc;
  • clear;
  • load feature;
  • [ coeff, score, latent, tsquared, explained, mu]=pca(feature);
  • a=cumsum(latent)./sum(latent); % 计算特征的累计贡献率
  • % explained和latent均可用来计算降维后取多少维度能够达到自己需要的精度,且效果等价。
  • % explained= 100*latent./sum(latent);
  • idx=find(a> 0.9); % 将特征的累计贡献率不小于 0.9的维数作为PCA降维后特征的个数
  • k=idx( 1);
  • Feature=score(:, 1:k); % 取转换后的矩阵score的前k列为PCA降维后特征
  • 参考文献:

    [1]matlab 自带pca函数

    [2]MATLAB帮助文档

     

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值