我正在看psych package和VSS tutorial,我只是用MAP替换VSS吗?像这样:
MAP(x, n = 8, rotate = "varimax", diagonal = FALSE, fm = "pa", n.obs=NULL,plot=TRUE,title="Very Simple Structure",...)
还是有另一种方法可以做到这一点?
我现在正在做因子分析,我正在使用肘部方法进行碎石图。我试图看看我是否也可以尝试使用Velicer的MAP标准
使用?MAP
查看该功能的文档。
如果那里什么也没有,可能会发送一封电子邮件给作者,列在包裹的CRAN页面:CRAN Page for Psych
该软件包由本网站的人员制作。他们可能有一个邮件列表:PersonalityProject.org
@Ryan Rosario
我终于想通了:
install.packages("psych")
library("psych")
我运行了示例步骤
my.VSS <- VSS(test.data,title="VSS of 24 mental tests")
和
VSS(sim.circ(nvar=24),fm="mle", title="VSS of 24 circumplex variables")
和
VSS(sim.item(nvar=24),fm="mle", title="VSS of 24 circumplex variables")
你得到这样的东西作为输出(为最后一个输入):
非常简单的24个环形变量的VSS结构调用:VSS(x = sim.item(nvar = 24),fm =“mle”,title =“24个环形变量的VSS”)VSS复杂度1达到最大值0.84和3因子VSS复杂度2在8个因子下达到最大值0.87
Velicer MAP标准在2个因子下达到最小值0.05
Velicer MAP 1 0.05 0.01 0.01 0.01 0.02 0.02 0.02
非常简单的结构复杂性1 1 0.44 0.84 0.84 0.80 0.75 0.76 0.80 0.80
非常简单的结构复杂性2 1 0.00 0.85 0.85 0.85 0.86 0.86 0.86 0.87
作为documentation says(突出显示上面是我的):
“Wayne Velicer的MAP标准已被添加为要提取的最佳组件数量的附加测试。请注意,VSS和MAP并不总是同意最佳数量。”
在这种情况下,复杂度为1和2的VSS分别给出3和8个因子的答案,而Velicer的MAP标准给出2。
迟到的回应,但我想我会跟进Pageman的评论。假设您使用vss函数创建一个对象:
my.vss <- vss(test.data)
摘要函数将提供VSS和MAP标准结果,例如,
summary(my.vss)
但您也可以轻松地从对象中提取MAP结果(就像我在许多数据集上运行VSS和MAP标准测试时所需要的那样),如下所示:
#returns the number of factors recommended by MAP
which(my.vss$map == min(my.vss$map))
#returns the number of factors recommended by VSS for complexity 1
which(my.vss$cfit.1 == max(my.vss$cfit.1)
#returns the number of factors recommended by VSS for complexity 2
which(my.vss$cfit.2 == max(my.vss$cfit.2))
在vss.stats data.frame中还有一大堆有趣的统计信息在vss对象中挂出,即,
class(my.vss$vss.stats)