【发布时间】:2017-09-03 02:38:00
【问题描述】:
以下代码在 R 控制台 (R 3.3.0) 中运行良好:
m = system.file("external/pores_1.mtx", package = "Matrix")
x = Matrix::readMM(m)
我可以把它放在一个脚本中,它在 R 控制台中运行良好:
source("test.R")
但是,当我以Rscript --vanilla test.R 或Rscript test.R 执行它时,出现错误:
Error in validObject(.Object) :
invalid class “dgTMatrix” object: Not a valid 'Mnumeric' class object
Calls: <Anonymous> -> new -> initialize -> initialize -> validObject
Execution halted
我不知道这是否与该特定功能有关。我猜这与 Rscript 的工作方式有关,但我之前将它与其他各种库和函数一起使用,并且从未见过这样的东西。知道发生了什么吗?
【问题讨论】:
-
我无法复制这个。您确定您正在运行的 R 与您正在运行的 Rscript 版本相关吗?也许尝试将
library(methods)添加到脚本中,因为默认情况下 Rscript 不会加载它。 -
绝对是相同版本的 R 和 Rscript(相同的
bin和相同的--version)。 -
添加
library(methods)有效。发生了什么?
标签: r sparse-matrix rscript