【问题标题】:How to apply a factor analysis applying spearman correlation to the principal() in R?如何将斯皮尔曼相关性应用于R中的principal()的因子分析?
【发布时间】:2020-08-30 00:12:39
【问题描述】:

可以使用具有非参数分布的 mtcar 对其进行测试。 我正在开发一个因子分析。我的数据本质上是非参数的。因此,根据文献,建议应用 Spearman 测试。我正在使用函数:

root.fa2 <- principal(dt, 
                  nfactors = 3, 
                  rotate = 'varimax',
                  scores=T, 
                  residuals =T,
                  oblique.scores=T,
                  method="regression",
                  spearman="cor",
                  use = "all.obs")

默认情况下,她使用选项 cor = "cor" 应用 Person 测试。但是,这是针对参数数据指示的。 spearman = "cor" 选项对该函数有效。但是,此错误正在返回-> stats::varimax(loadings, ...) 中的错误:未使用的参数(spearman = "cor")。这仅在我定义 nfactors > 1 时发生。

【问题讨论】:

    标签: r correlation


    【解决方案1】:

    文档可能在这里并不清楚,但是查看MixedCor 的文档可以得到以下结果:

    root.fa2 <- principal(mtcars, nfactors = 3, 
            rotate = 'varimax', scores=TRUE, residuals=TRUE, oblique.scores=TRUE,
            method="regression", use = "all.obs", cor="spearman")
    

    注意。拼写 TRUEFALSE 是一种很好的做法,因为它们是保留字。 TF 通常可以工作,但它们不是保留的,因此您可能会意外地将 TF 分配给代码其他部分的值。

    【讨论】:

    • 如果它是 psych 包装中的那个?是的。功能代码中提供了“spearman”选项,它应该工作吗?遵循为矛兵准备的部分代码函数: switch(cor, cor = { if (!is.null(weight)) {r
    • 还没有。它不会生成 root.fa2 $ scores 输出。应用注释示例返回 NULL。必须返回 32x3 矩阵。
    • 不是评论的建议,上面提出的答案。当我运行该代码时,我得到一个 32 x 3 的 root.fa2$scores 矩阵。
    猜你喜欢
    • 2017-06-05
    • 2018-09-07
    • 2014-12-07
    • 1970-01-01
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    • 2016-08-12
    • 1970-01-01
    相关资源
    最近更新 更多