繁体   English   中英

从R中的因子分析Biplot {psych}中消除箭头

[英]Eliminating arrows from a factor analysis Biplot {psych} in R

biplot由以下代码制作我试图摆脱红线。 如果有人可以帮助,我将不胜感激。

library(psych)
data(bfi)
fa2 <- fa(bfi[16:25],2)  #factor analysis
fa2$scores <- fa2$scores[1:100,]  #just take the first 100
biplot(fa2,pch=c(24,21)[bfi[1:100,"gender"]],bg=c("blue","red")[bfi[1:100,"gender"]],
main="Biplot of Conscientiousness and Neuroticism by gender")

在此处输入图片说明

无论出于何种原因, psych图书馆都决定重写自己的Biplot,因此它忽略了许多标准参数。 您可以创建自己的版本,只需删除箭头图即可。 该方法有些hacky,但已使用psych_1.4.5进行了psych_1.4.5 只要验证一下

body(biplot.psych)[[c(11,3,12)]]

回报

arrows(0, 0, x$loadings[, 1L] * 0.8, x$loadings[, 2L] * 0.8, 
    col = col[2L], length = arrow.len)

确保我们更改了正确的行。 那你可以做

biplot.psych2<-biplot.psych
body(biplot.psych2)[[11]][[3]][[12]]<-NULL

然后使用

biplot.psych2(fa2,pch=c(24,21)[bfi[1:100,"gender"]],
    bg=c("blue","red")[bfi[1:100,"gender"]],
    main="Biplot of Conscientiousness and Neuroticism by gender")

要得到

在此处输入图片说明

发布问题数月后,这里有一个快速解答。 您实际要求的不是biplot(包括因子得分以及因子负载),而只是因子得分的图。 用你的例子,

情节(FA2 $分数,BG = C( “蓝”, “红”)[BFI [1:100, “性别”]],PCH = C(24,21)[BFI [1:100, “性别”] ],ylim = C(-3,3),XLIM = C(-3,3))。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM