mental package fa.parallel()调用出错

时间:2013-03-17 18:56:00

标签: r

我在脚本中遇到以下错误:

fa.parallel(eser[,-1], fa="pc", n.iter=10,
             show.legend=FALSE, main="Example Scree plot with parallel analysis")

Error in fa.parallel(eser[, -1], fa = "pc", n.iter = 10, show.legend =
FALSE,  :  object 'fa.values.sim' not found

fa.values.sim是什么类型的对象?然而,碎石图正确地出现了。 你有想法帮我解决错误吗?我在R v2.15.3下使用Rstudio v0.97.310

非常感谢您提供的任何帮助。


eser数据框如下:

Participant Price Software Aesthetics Brand
1           P1     6        5          3     4
2           P2     7        3          2     2
3           P3     6        4          4     5
4           P4     5        7          1     3
5           P5     7        7          5     5
6           P6     6        4          2     3
7           P7     5        7          2     1
8           P8     6        5          4     4
9           P9     3        5          6     7
10         P10     1        3          7     5
11         P11     2        6          6     7
12         P12     5        7          7     6
13         P13     2        4          5     6
14         P14     3        5          6     5
15         P15     1        6          5     5
16         P16     2        3          7     7
17         P17     3        3          5     6

3 个答案:

答案 0 :(得分:2)

我已经在下一版的心理学包(1.3.6)中解决了这个问题。

向心理治疗包的所有用户发出请求。如果您发现了错误,请告诉我。这是修复它们的最佳方法。

比尔

答案 1 :(得分:1)

我认为这是函数中的一个错误。您可以通过在R中的命令行中键入其名称来阅读其源代码。然后,您可以搜索fa.values.sim的所有出现。其中每一个都在if (fa != "pc")语句中。因此,当函数尝试分配results时,它不能,因为如果fa.values.sim确实没有定义fa == "pc"。但是这个错误发生在情节陈述之后,所以你的情节不受影响。

总而言之,fa.parallel的代码中存在错误。如果你关心的只是情节,那你确实很好。您可以忽略错误消息。

如果确实希望错误消息消失,请将命令更改为:

fa.parallel(eser[,-1], fa="foo", n.iter=10,
             show.legend=FALSE, main="Example Scree plot with parallel analysis")

这是因为函数恰好被写入的方式。

答案 2 :(得分:0)

library(psych)
fa.parallel(USJudgeRatings[,-1], fa="PC", n.iter=100,
show.legend=FALSE, main="Scree plot with parallel analysis")

以上挂起R的原因不明。有bug吗? 谢谢