我在R中创建了一个用于测试目的的函数,它将获得两个值,添加它们并将结果分配给变量,结果将存储在csv文件中。以下是我的代码
f2 <- function(x, y) {
args=(commandArgs(TRUE))
z1 <- x + y
z2 <- x + 2*y
b <- list(z1, z2)
write.csv(b,"testfun.csv",row.names=F)
print(z1)
print(z2)
print(b)
}
代码工作正常,我可以通过r控制台将值传递给我的函数。但是,我想使用R CMD而不是在r控制台中执行此操作。这是因为我有一个Web应用程序,它将在单击按钮时调用此功能。
我尝试使用以下代码调用该函数
Rscript test.R 5 100
和
R CMD BATCH --no-save --no-restore '--args x=3 y=5' test.R test.out &
然而,函数没有被调用,我没有得到输出。当我运行上述R CMD BATCH语句时,我收到的错误类似于&#39;&#39; - args&#39;&#39;没有相应的文件和目录。
致命错误:无法打开文件&#39;&#39; - args&#39;:没有此类文件或目录
所以我移动了&#39; - args x = 3 y = 5&#39;测试后的值.R就像
R CMD BATCH --no-save --no-restore test.R '--args x=3 y=5' test.out &
执行上述操作后,我将r s sript保存在目录中,而不是我预期的输出。我尝试了以下链接中的所有方法
Passing command line arguments to R CMD BATCH
任何人都可以对此有所了解吗?我需要通过rscript或r cmd调用我的函数以及一些参数。