全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
8301 7
2011-10-03
用R做主成分分析,请问怎么找不到得分系数矩阵?另外,怎么载荷矩阵和SPSS中的也不一样,不知道问什么?
我用的是princomp命令,不知错在哪里,高手请帮帮我!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-10-3 15:16:12
高手呀,R我一点也不会啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-1-7 16:01:02
prcomp是基于SVD分解,princomp是基于特征向量eigen()函数

SPSS用的应该是prcomp,
R的这两个都是自带的,不用加载扩展包
得到的结果包括:
  • 特征根集,
  • PC scores表,
  • (变量和PC)相关系数表(table of loadings)
   
更多的期待SPSS高手来解

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-5-21 13:15:13
请问 princomp() 在哪个包里?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-24 08:51:39
爽爽胖胖 发表于 2015-5-21 13:15
请问 princomp() 在哪个包里?
psych这个包里有
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-12-12 20:24:30
在R中要看到得分系数矩阵,使用summary()函数
pr<-princomp(data,cor=TRUE)  #做主成分分析,data为数据
summary(pr,loadings=TRUE)  #提取主成分分析信息,包括主成分系数矩阵
predict(pr)  #计算主成分得分

在SPSS中没有直接的主成分分析方法,要使用因子分析,它算出来的成分矩阵就可以作为系数矩阵了,这个值除以λ的开平方就是R中的系数矩阵了
要在SPSS中计算得分有3种方式:
(1)使用成分矩阵 y1'=a1*(x1-x1的均值)/x1的标准方差开平方+a2*(x2-x2的均值)/x2的标准方差开平方...
       则y1 = y1' /λ1的开平方
这里的x1和x2是原始数据
(2)使用成分得分系数矩阵: y1'=a1*(x1-x1的均值)/x1的标准方差开平方+a2*(x2-x2的均值)/x2的标准方差开平方...
       则y1 = y1'*λ1的开平方
(3)在SPSS中进行主成分计算时,在得分选项中,将保存为变量勾选上,然后它会计算出因子得分来,然后在SPSS转换->计算变量中,目标变量输入y1,然后双击它生成的第一个因子得分,然后在后面输入*(λ1的值**0.5)即可
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群