下面的代碼工作正常,在R控制檯(R 3.3.0):R錯誤的腳本運行的時候,而不是在控制檯
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默認不加載。 – MrFlick
絕對是R和Rscript(相同'bin'和相同'--version')的相同版本。 – burger
添加'庫(方法)'工作。發生了什麼? – burger