假设我在 R 中创建了一个函数,例如
bin <- function(arg1, arg2, arg3) {
//some code here
}
我正在使用 Renjin 在 JVM 上运行 R。从我的 Java 程序中,我想调用我的 R 函数bin
。我知道您首先需要使用类似的东西才能访问 R
ScriptEngineManager manager = new ScriptEngineManager();
// create a Renjin engine:
ScriptEngine engine = manager.getEngineByName("Renjin");
但是一旦完成,我该如何访问我的 R 函数?此函数存储在单独的文件中。我知道要运行 R 脚本(我们称之为script.R
),您可以使用
engine.eval(new java.io.FileReader("script.R"));
但这不允许在文件中的函数中传递参数......它只是运行整个事情。
我是否必须在我的 Java 程序中使用 R/Renjin 重写该函数?还是有一种有效的方法来调用该函数?
谢谢!