24小时热门版块排行榜    

CyRhmU.jpeg
查看: 4257  |  回复: 10
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

李琴李恺

金虫 (初入文坛)

[求助] 主成分分析怎么具体计算得分矩阵已有1人参与

使用主成分分析  princomp 函数之前必须对原始数据用zscore函数标准化吗?
princomp 这个函数算出的得分矩阵,其第一列就是第一主成分的得分,第二列就是第二主成分的得分,以此类推?
主成分分析具体是怎么计算得分矩阵的?有具体计算公式吗?
这是我的原始数据258*7矩阵(258个化合物,7个变量),这是其中的一小部分
0                ALLP4        HOMO        MDE 44        EMAX1        PND2        PND5        FQLOGS
1                1.712873          -0.212716        17.661932        10.34301        0        19.26136         3.681279
2                1.701992         -0.588637        14.761534        10.307917        0        8        4.108043
3                1.737415         0        14.761534        10.257315        0        14.96663         3.889683
4                1.760906         -0.729041        13.653671        10.519258        5.656854         9.055386        4.156014
5                1.758834         -0.41457         17.194927        10.645918        6.082763         5.744563        4.672078
6                1.687093         -0.178275        17.661932        10.326003        0        9.591663         4.088987
7                1.742393         0        14.761534        10.341249        0        15.132746        3.889683
8                1.737415          0        14.761534        10.277723        0        8.717798         3.985897
9                1.758834         -0.645217        17.194927        10.625509        6.082763         10.148891        4.250487
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

李琴李恺

金虫 (初入文坛)

引用回帖:
3楼: Originally posted by 396778911 at 2014-05-24 08:58:38
我们一般用svd分解  在MATLAB里使用=svd(a),这是最稳定和最精确的方法 ,可以按照大到小的顺序给出奇异值、行特征向量、列特征向量。还有种方法是Z=A'*A,=eig(Z),可以获得Z的特征向量V和特征值D,用T=A*V计算出主成 ...

好的,我试一下
4楼2014-05-24 10:00:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

396778911

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
李琴李恺: 金币+50, 有帮助 2014-05-25 17:29:16
我们一般用svd分解  在MATLAB里使用[u,s,v]=svd(a),这是最稳定和最精确的方法 ,可以按照大到小的顺序给出奇异值、行特征向量、列特征向量。还有种方法是Z=A'*A,[V,D]=eig(Z),可以获得Z的特征向量V和特征值D,用T=A*V计算出主成分的得分。这种方法的确定是不能排序。
3楼2014-05-24 08:58:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

李琴李恺

金虫 (初入文坛)

引用回帖:
3楼: Originally posted by 396778911 at 2014-05-24 08:58:38
我们一般用svd分解  在MATLAB里使用=svd(a),这是最稳定和最精确的方法 ,可以按照大到小的顺序给出奇异值、行特征向量、列特征向量。还有种方法是Z=A'*A,=eig(Z),可以获得Z的特征向量V和特征值D,用T=A*V计算出主成 ...

我想问一下svd分解法得到的U矩阵就是得分矩阵吗?U矩阵的第一列就是第一主成分的得分吗?
5楼2014-05-24 10:02:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

李琴李恺

金虫 (初入文坛)

引用回帖:
3楼: Originally posted by 396778911 at 2014-05-24 08:58:38
我们一般用svd分解  在MATLAB里使用=svd(a),这是最稳定和最精确的方法 ,可以按照大到小的顺序给出奇异值、行特征向量、列特征向量。还有种方法是Z=A'*A,=eig(Z),可以获得Z的特征向量V和特征值D,用T=A*V计算出主成 ...

我的A矩阵用的是标准到0-1的矩阵,用这两种方法得不到相同的得分矩阵,这是什么原因啊
6楼2014-05-24 10:11:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见