Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中将PCA输出转换为数据帧_R_Dataframe_Pca - Fatal编程技术网

在R中将PCA输出转换为数据帧

在R中将PCA输出转换为数据帧,r,dataframe,pca,R,Dataframe,Pca,我做了主成分分析。输出pca1$loadings看起来像一个数据帧,但它不是。有没有办法将其转换为数据帧 我希望能够对输出的列进行排序。如果我能使用Excel中的输出,那也太好了 这是我用来生成PCA的代码 cor <- cor(df[, 1:87]) #correlation matrix with all dv's pca1 <- principal(cor, nfactors = 87, rotate = "varimax") pca1$loadings 该对象为类加载,要

我做了主成分分析。输出pca1$loadings看起来像一个数据帧,但它不是。有没有办法将其转换为数据帧

我希望能够对输出的列进行排序。如果我能使用Excel中的输出,那也太好了

这是我用来生成PCA的代码

cor <- cor(df[, 1:87]) #correlation matrix with all dv's
pca1 <- principal(cor, nfactors = 87, rotate = "varimax") 
pca1$loadings
该对象为类加载,要转换为dataframe,请使用as.data.frame.matrix

较短的版本是删除class属性

unclass(pca1) 

您可以只使用write.csvpca1$loadings,PCA_loading.csv在.csv文件中写入PCA加载。as.data.frame.matrix在我使用pca1$loadings时工作,而不在我只使用pca1时工作。@melbez是的,这就是我在pca1中所做的
cor <- cor(mtcars)
pca1 <- psych::principal(cor, nfactors =2, rotate = "varimax")$loadings 
as.data.frame.matrix(pca1)


#         RC1     RC2
#mpg   0.6846 -0.6329
#cyl  -0.6373  0.7231
#disp -0.7328  0.6044
#hp   -0.3233  0.8828
#drat  0.8533 -0.2091
#wt   -0.7989  0.4557
#qsec -0.1591 -0.8996
#vs    0.2996 -0.8206
#am    0.9206  0.0774
#gear  0.9066  0.1661
#carb  0.0775  0.8660
unclass(pca1)