1

我正在尝试从 java 执行 R 文件,这是我尝试过的代码。

RCaller caller = new RCaller();
RCode code = new RCode();  
caller.setRscriptExecutable("D:\\R\\R-3.0.2\\bin\\Rscript.exe");    
code.clear();
caller.setRCode(code);
code.R_source("D:\\Data\\Workspace\\Cpackage\\try.R");
caller.setRCode(code);
caller.runOnly();

尝试.R文件

myinput<-function(){
//loading a csv file,reading it and creating an excel file(Working when it is run from r directly)
}

myinput()

上面的 rcaller java 代码没有做任何事情。如果我做错了什么,请帮忙,我需要做得非常糟糕。如果有任何其他方法可以实现这一点,请建议!

4

1 回答 1

0

RCaller 不会更改给出的 Java 路径格式

code.R_source("D:\\Data\\Workspace\\Cpackage\\try.R");

为 R 格式。这会产生一个 R 代码,如

source("D:\\Data\\Workspace\\Cpackage\\try.R")

所以你需要把它改成

code.R_source("D:/Data/Workspace/Cpackage/try.R");

看看Rcaller源码的源码就好了,可以看出

public void R_source(String sourceFile) {
    addRCode("source(\"" + sourceFile + "\")\n");
}

将具有字面上给定的 R 文件的函数定义为 R 字符串。

于 2014-05-07T10:26:11.240 回答