以下命令在RStudio中工作正常,但不能在RScript中工作:
require(glmnet) calibdata = read.csv("calibrationfile.csv") xs = model.matrix(as.formula("targetvar~predictor1+predictor2)),calibdata)[,-1] # -1 discards intercept constant, glmnet has its own ys = as.numeric(unlist(calibdata["targetvar"])) fit=cv.glmnet(xs,ys)
来自RScript的错误消息:
Error in is(x, "CsparseMatrix") : could not find function "new" Calls: cv.glmnet -> glmnet -> elnet -> getcoef -> drop0 -> is Execution halted
两种情况下的R版本均为3.2.3,而glmnet版本为2.0-2.
如何让glmnet在RScript中工作?
RScript
有这个"可爱"的功能,没有加载(基本包)方法.
所以你需要的是一个额外的
require(methods)
要么
suppressMessages(library(methods))
对于什么是值得的利特勒命令行和脚本前端至R杰夫·霍纳和我写的默认加载方式为您...