2017-03-09 80 views
0

我对数据框执行主成分分析以减少线性回归分析中的预测因子数。检索R中每个主成分的观察分数

pr.out = prcomp(df, scale=TRUE) 
pr.var = pr.out$sdev^2 
pve = pr.var/sum(pr.var) 

这样做后,我想用我的数据框中的旧变量替换前几个主成分来解释最大变异比例。但是,对于我而言,我无法找到每个主成分的观察向量(即每个数据点的PC1得分)。你知道我可以如何访问它们吗?例如,我尝试pr.out$PC1,但返回NULL

+0

你可以用'名(pr.out)'来看看在对象可用,并且'STR(pr.out)'得到数据内容的一些想法。正如你发现的那样,没有PC1,但有一个'x'。 – neilfws

回答

0

找到了!您可以使用以下命令访问所有主体组件的分数:

pr.out$x 

这将为您提供所有组件的分数。要访问单个组件的分数,您需要选择包含所有行的相应列。例如,访问成绩为第一主成分使用:

pr.out$x[,1]