问题标签 [jri]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
276 浏览

java - JRI - R 代码中的换行符

我目前正在使用 Java 包 JRI,以便使用 R 提供的一些功能。

假设,我的 R 命令如下所示:

如果我将它放入我的 REngine.eval() 函数中,它会崩溃,因为我应该将整个命令输入到一个“eval()”命令中。它可以在我的普通 R 命令行中运行...

主要问题是,无论何时下一个订单是否拆分为多行,我都很难预测。那么,我该如何解决这个问题呢?

我想过计算括号,但括号的数量并不总是均匀的。(比方说,字符串中包含一些括号)还有其他想法吗?

编辑:我认为,我的观点不够明显。试试这个:

您会看到,对于前两个命令 a,您会收到

但其余的 b 是这样的:

一般来说,这是 R 的一个问题。通常这有效,但在 JRI 中无效!

0 投票
3 回答
1695 浏览

java - Problems with JRI

I am trying to run an example of JRI and being unsuccessful, here is a link to the example. http://blog.comsysto.com/2013/07/10/java-r-integration-with-jri-for-on-demand-predictions/

This is the error the console gives me.

As far as I know I have the external JRI 2014-10-19 jar attached to the project correctly. I have R 3.1.2 installed and I have the rJava 0.9-6 package installed.

Line 10 is "rengine.eval(String.format("greeting <- '%s'", "Hello R World"));".

And Line 17 is "hello.helloRWorld();".

Please Let me know if you have an idea as to why it's throwing these exceptions.... :)

0 投票
2 回答
646 浏览

rjava - 尝试使用 RJava 时的 EXCEPTION_ACCESS_VIOLATION

所以我试图通过 JRI 从 Java 中使用 R。我正在为 Eclipse 使用 RJava 插件,并且 rJava 附带的两个测试文件工作正常(rtest 和 rtest2)。但是当尝试运行这个简单的代码片段时,我得到一个 EXCEPTION_ACCESS_VIOLATION:

我得到的输出:

完整日志: http: //pastebin.com/18wHWihB

我在日志中看到了这个,它必须做些什么吗?(错误使用了 eval 函数?我只是复制了一个例子......)

如果有人可以提供帮助,我很茫然,将不胜感激:)

0 投票
1 回答
468 浏览

r - save R image plot via org.rosuda.jri.rengine

I use org.rosuda.jri lib to run an R script that implements the ordinary kirging algorithm via java. I use ubuntu 13.04 and the version 1.7-3 of REngine While all the results are perfectly produced BUT i can not create the plots and store them.

while the following lines are perfectly executed in R console

These ones are ignored

What i am missing??? Thanks for the dedicated time. :-)

0 投票
1 回答
101 浏览

java - JRI、Java 和 R:变量在 eval 之间不累积

在此代码中,变量xx返回 0 而不是 20,不应该计算它并将其值保留在 eval 之间吗?

这是结果:

0 投票
1 回答
1987 浏览

java - R JRI:尝试使用 REXP.createDataFrame 从 Java 创建 data.frames

我正在尝试在 R 中创建一个数据框,从 Java 中的 ArrayList 获取数据。

下面的代码似乎是官方的 JRI 测试套件(请参阅此链接),但它甚至没有编译,例如在第一条语句中 RList 没有 put 方法并且 REXP.createDataFrame 方法不存在。

有没有更新的例子REXP.createDataFrame?无法在线找到具体/功能示例。此外,找不到任何 JRI 文档。

更新

我发现有两个REXPorg.rosuda.JRI.REXPorg.rosuda.REngine.REXP,后者有方法createDataFrame(l),但是分配不起作用。如何将数据框分配给 R 变量?

0 投票
1 回答
1710 浏览

r - 尝试加载 JRI 时找不到依赖库

我有这段简单的代码尝试加载 JRI 模块。

我将 java.library.path 作为 VM 参数传递,但 JRI 无法加载并出现以下错误:

在此先感谢您的帮助。

0 投票
0 回答
177 浏览

java - JRI 导致 Java 内存不足异常

我有一个使用 JRI 调用 R 脚本的 Java 程序。在调用 re.eval("setMatValue('" + id + "'," + x + "," + y + "," + value + ")");时,我得到一个 java 内存不足异常,这对我来说很奇怪,因为 R 中的函数既没有返回任何类型的值,也没有将(不存在的)结果映射到 java 对象。矩阵仅存储在 R 上下文中并由字符串引用。

R 使用的内存是否包含在 Java 堆中?还是 JRI 分配了实际上不需要的空间?

对于更大的范围:我正在尝试将在 Java 中实现的代码分析所使用的矩阵的处理外包给 R。矩阵变得非常大,因此在 java 中占用了太多空间,我没有找到任何java中的矩阵实现能够创建该大小的矩阵。

0 投票
1 回答
778 浏览

r - 调用 predict() 时 Rengine.eval() 返回 null

我最近开始使用 JRI 在 Java 中运行 R 代码/脚本。尽管大多数语句看起来都可以正常工作(例如简单的赋值Test <- 123和特定的函数,如source(...) read.csv(...), rpart(...), data.frame(...)),但有一个函数总是会返回 null:predict(...)

具体来说,我一直在尝试rengine.eval("prediction <- predict(fit, predict_entry, type = \"class\")");在“fit”和“predict_entry”都不为空且似乎包含有效值的情况下运行。然后,当我尝试运行rengine.eval("prediction")时,结果始终为空。

我不确定我是否错过了一些导致问题的库路径 - 请注意,相同的命令直接在 RStudio 控制台上运行良好。我的 java.library.path 和 R_HOME 的输出看起来也正确:

System.getProperty("java.library.path"):C:\Users\...\Documents\R\win-library\3.1\rJava\jri\x64;C:\Program Files\R\R-3.1.1\bin\x64

System.getenv("R_HOME"):C:/Program Files/R/R-3.1.1

有人对问题可能是什么有任何建议吗?请告诉我。

谢谢!

编辑:这是我错过的一些附加信息(感谢您指出 BondedDust!)

  • 我的 rpart() 函数随基础 R 一起提供,并通过library(rpart)
  • 创建“fit”的调用:fit <- rpart(Verdict ~ TestEvent1A + TestEvent1B + TestEvent2C, data=training_set, method="class")并通过 read.csv() 从 CSV 文件中读取 training_set;Verdict、TestEvent1A、TestEvent1B 和 TestEvent2C 是该 CSV 文件的列标题
  • 非常好的调用 - 两者都terms(fit)str(predict_entry)rengine.eval() 返回 [NULL ]; 然而,fit单独predict_entry返回[VECTOR ([VECTOR ([FACTOR {levels=("<leaf>","TestEvent1A","TestEvent1B","TestEvent2C"),ids=(2,3,0,2,0,0,1,3,0,0,0)}], [INT* (500, 409, 329, 80, 26, 54, 91, 68, 33, 35, 23)], [REAL* (500.0, 409.0, 329.0, 80.0, 26.0, 54.0, ...[VECTOR ([FACTOR {levels=("1"),ids=(0)}], [FACTOR {levels=("5"),ids=(0)}], [FACTOR {levels=("3"),ids=(0)}])]分别 - 都包含我放入测试的数据。这可能是问题的根源吗?

编辑#2:我尝试在 RStudio 控制台上运行term(fit)str(predict_entry)得到以下输出(不是 NULL!)

0 投票
1 回答
559 浏览

java - Rengine.eval() 返回 null

我正在使用 JRI 包来构建使用 catR 包的应用程序。在我的 Mac 上完美运行,但是当我在 Windows 上尝试时,函数 thetaEst 总是返回 null - 只有这个函数。是否有任何特定于 Windows 的配置..?

这是一段代码:

我在 theta.asDouble() 上得到了 NullPointerException;

任何人都可以帮助我吗?

提前致谢。