【问题标题】:Error in switch(class(arraydata), matrix = { : EXPR must be a vector of length 1开关错误(类(数组数据),矩阵 = {:EXPR 必须是长度为 1 的向量
【发布时间】:2021-01-08 14:44:10
【问题描述】:

我想知道是否有人在使用ord function 时遇到了类似的错误? 我的代码自从使用R (4.0.2) 的新版本后就没有工作了,我想知道它是否与made4 更新有关?

如果有人能提供一些提示,我将不胜感激

这是有问题的一段代码

res_coa <- ord(tdata, classvec=Species, type="coa")

其中tdatamatrixSpeciesfactor

【问题讨论】:

  • 自 R 4.0 class(matrix(1)) 返回一个长度为 2 的向量。我会说这是包中的一个错误。
  • 尝试将您的矩阵转换为其他受支持的输入类之一。 (并将错误报告给包维护者。他们应该修复这个问题并添加一个单元测试。)
  • 非常感谢,罗兰。我在发布其他课程的问题之前尝试过,但没有成功。所以,我会提出另一个建议。再次感谢。

标签: r function class switch-statement ord


【解决方案1】:

我遇到了同样的问题,我只是将我的数据转换为 data.frame 来解决它。您可以尝试以下方法:

res_coa <- ord(data.frame(tdata), classvec=Species, type="coa")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-11
    • 1970-01-01
    • 1970-01-01
    • 2014-06-15
    相关资源
    最近更新 更多