【问题标题】:omega function (Psych package R) not working with plot=TRUEomega 函数(Psych 包 R)不适用于 plot=TRUE
【发布时间】:2020-12-26 05:52:21
【问题描述】:

我必须首先声明我不是R用户,但我想应用我只能在R中找到的某个功能。

我的目的是使用 Psych 包中的 omega 函数获得双因子因子分析模型。我有一个包含 33 列和大约 100,000 个观察值的数据框,当我调用函数 (omega(df)) 我收到以下错误:

nchar(tv[1, 21]) 中的错误:'nchar()' 需要字符向量

我不知道这意味着什么。如果我按照this doc 中的示例使用他们的数据(名为“bifact”),它可以正常工作,但是该示例使用相关矩阵,而我想使用整个数据来提取因子分数。当我尝试使用omega(cor(df)) 调用该函数时 我仍然遇到同样的错误。

附件是随机生成的数据集,会产生相同的错误。 任何帮助将不胜感激。

解决方案的一个线索可能是使用 set.seed(0) 我得到的错误与使用 set.seed(100) 不同:

set.seed(100) s_df = as.data.frame(cbind(matrix(seq_len(10000), ncol=1), matrix(rnorm(n=6*10000, mean = 20, sd = 10), ncol=6)))[2:7] omega(s_df)

nchar(tv[1, 21]) 中的错误:'nchar()' 需要字符向量

同时: set.seed(0) s_df = as.data.frame(cbind(matrix(seq_len(10000), ncol=1), matrix(rnorm(n=6*10000, mean = 20, sd = 10), ncol=6)))[2:7] omega(s_df)

omega.diagram 中的错误(omega,main = 标题,sl = sl,标签 = 标签,: 找不到对象“d.arrow”

编辑:当我使用 plot=FALSE 调用函数时,一切正常。 但是,我仍然希望情节能够奏效。 (plot=TRUE) 通过不需要的错误。

【问题讨论】:

  • 如果你只运行cor(df)会发生什么?你有错误吗?矩阵是否包含 NA?
  • 它运行得很好,没有 NAs
  • 如果您可以使用数据的子集(然后发布数据)复制问题,您可以发布,那将很有用。
  • 谢谢,我附上了一个随机数据集,它会产生同样的问题。

标签: r psych


【解决方案1】:

好的,事实证明我只是没有安装“Rgraphviz”包。

安装后一切正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-25
    • 1970-01-01
    • 1970-01-01
    • 2021-06-25
    • 1970-01-01
    相关资源
    最近更新 更多