我使用psych
包的fa
命令进行因子分析,因此有一个类fa
的对象。我可以用fac$loadings
查询加载,但是我只想提取包含加载的表,所以我可以使用xtable
(或类似的)将其转换为LaTeX格式。
示例代码:
library(psych)
library(xtable)
data(bfi)
fac <- fa(r=cor(bfi, use="complete.obs"), nfactors=5, fm="ml", rotate="none")
fac$loadings
ld <- someMagicalFunction(fac$loadings)
xtable(ld)
谁能告诉我someMagicalFunction
可以用什么?
查看fac$loading
时,可以看到它是一个S3对象。删除class属性给你一个matrix
,然后可以传递给xtable
:
str(fac$loadings)
class(fac$loadings)
xtable(unclass(fac$loadings))
可以。
另一种选择是使用psych中的fa2latex函数:
使用你的例子:
library(psych)
fac <- fa(bfi,5)
fa2latex(fac)
将给你一个APA就绪的LaTeX表。
比尔xtable的结果是HTML语言。如果想将其保存为文件,可以使用:
print.xtable(x, type="HTML", file="table.html")
另一种选择是调用fac$Vaccounted
,它将提取比例方差,累积方差等,然后可以将其放入df或able对象:
fac$Vaccounted %>% kable()
对fac$weights
执行同样的操作来访问加载:
fac$weights