问题标签 [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 投票
3 回答
2453 浏览

java - 在 Java/JRI 代码中加载 R 自己创建的库时出现问题

我创建了自己的新 R 库(称为“媒体”)。当我尝试用 RGui 加载它时没有问题,我可以调用新包中定义的函数。这就是我加载它的方式:

但是,我也试图从Java/JRI代码中调用这些函数,当我加载新的 R 包时,Java 似乎没有找到 pacakge,抛出消息“库中的错误(媒体):对象媒体' 未找到”

这是我当前使用 JRI 的代码:

如果没有“setwd”命令,它也会失败,并且对现有 R 函数的简单调用可以正常工作。我在 Windows 下使用 R 2.10 和最新的 JRI 0.5-0。

任何帮助,将不胜感激。非常感谢。

编辑:

该参数lib.loc似乎起作用,至少这句话不返回错误:

但在那之后,调用包中的函数re.eval("myfunction()");仍然失败,因为没有正确找到该函数。

0 投票
1 回答
1058 浏览

java - 来自没有图形的java的R:是否值得转移到JRI

我有一个系统设置,它一直在愉快地从 java servlet 运行 R,产生处理并连接到进程的 stdin、stdout 和 stderr 流,就像这个问题的第二个安德威尔一样。

在系统升级(包括 glibc)之后,输入不再到达 R 进程。*

到目前为止,'R --vanilla --slave -f [file] ...' 对我来说工作正常。我现在也没有摇摆依赖,所以我有点不愿意添加它们。(我实际上可能无法添加 Swing 依赖项;使用 REngine 自动引入 Swing 对吗?示例导入了所有 Swing。)

切换到 JRI 有什么好处吗?我需要对我的 R 脚本进行哪些更改?(它目前从标准输入读取并写入标准输出)。我没有发现提供的示例对于如何在这种情况下使用 JRI 非常有帮助。

感谢您的帮助和评论。

*我什至无法判断问题是数据写入太早还是太晚,但这是一个单独的问题/问题;如果我搬到 JRI,我希望这一切都变得毫无意义。

0 投票
1 回答
2317 浏览

java - 从 R 调用绘图到 Java 应用程序

有没有人成功地使用 JRI 和 rJava?我想在我的 Java 应用程序中放入一些用 R 制作的图表,但没有成功。任何人都可以提供工作示例。这是我发现的,但它不起作用。

0 投票
3 回答
456 浏览

r - JRI 可以访问 Vista 上用户安装的软件包吗?

我开发了一个使用 JRI 来利用 ptw 包的 Java 应用程序。

在 Linux(Ubuntu 10.04、R 2.10.1、JRI 0.5.0)上运行良好。

但是,在 Vista(R 2.12.0,JRI 0.5.0)上,当应用程序评估“library(ptw)”时,会发生以下错误:

库中的错误(ptw):找不到对象“ptw”

当我从 Vista 命令行运行 R 并发出“library(ptw)”命令时没有问题。

如果我将 ptw 包从 %USERPROFILE%\Documents\R\win-library 复制到 %R_HOME%\library,那么问题就会消失。但是,我不希望我的用户必须这样做,事实上,有些人可能没有这样做的权限。

因此,如何让 JRI 调用可以访问用户已安装在其 %USERPROFILE%\Documents\R\win-library 中的包的 R-Engine?

我也在r-help 邮件列表上询问过,但并不高兴。

我知道 library() 函数的libloc参数,但我更喜欢一些不那么脆弱的东西,即自动而不是需要配置......

0 投票
2 回答
1318 浏览

java - .jar 执行时无输出

我在 Netbeans 6.8 中构建了一个应用程序并制作了project.jar文件。当我运行它时,它只能在我的计算机上运行,​​而不能在任何其他计算机上运行。但是,当我制作任何不使用任何库的简单应用程序时,它可以在任何计算机上正常工作。有什么办法,如何调用一些错误消息,问题出在哪里?

我的项目使用 R 2.9.2,所以我将此版本安装在其他计算机上并将系统路径变量设置为完全相同。lib目录中列出的其他库有:AbsoluteLayout.jar,DatePicker-V0.99-2006.09.01.jar,jcommon-1.0.16.jar,jfreechart-1.0.13.jar,jmathplot.jar,JRI.jar,pdf-渲染器-1.0.5.jar

谢谢

0 投票
1 回答
309 浏览

java - 安装 JRI 时遇到问题(R 到 java)

我想知道是否有人对我的错误消息有经验或有任何建议。

当我运行 ./configure 文件时,它运行时没有错误。当我运行 make 文件时,我得到

我在其他论坛上看到过相同或类似的问题,但似乎没有人回答过那里的问题。想知道是否有人知道这对stackoverflow 意味着什么。

0 投票
1 回答
656 浏览

r - 使用 JRI 时,一个成功请求后 JVM 崩溃

我正在使用 JRI api 在 Java 中使用“R”。我创建了一个具有 JRI 代码的网络服务。当我第一次使用这个 Web 服务时,它可以正常工作,但是在随后的请求中,JVM 崩溃并说:“崩溃发生在 Java 虚拟机之外的本地代码中。”

这是否与 R 没有线程支持这一事实有关,您只能在多线程应用程序中运行 R 的一个实例?

我正在使用 Rengine 在 Java 中运行 R 脚本,我试图停止/销毁 Rengine 对象但它不起作用。如何确保在第二个请求之前对 Rengine 实例进行垃圾收集。

请让我知道如何解决这个问题。

0 投票
2 回答
652 浏览

java - RMySQL 包不通过 JRI 接口加载

我已经设法在 R 中安装了 RMySQL,它运行良好(我还安装了它所需的依赖项 DBI,它也运行良好)。我正在构建一个通过 JRI 包与 R 交互的 java 应用程序(它也可以正常工作)。目前,我的应用程序查询 MySQL 数据库,将查询结果写入文件,并将这些文件加载​​到 R 中(通过使用 R 中的 load.csv() 函数)。但是,如果 R 直接与 MySQL 交互(因此是 RMySQL 包),程序会更有效地运行。我遇到的问题是,如果我尝试使用 Rengine.eval() JRI 函数加载 RMySQL 包,它将不会加载到 R 中。但是,Rengine.eval() 函数将加载我尝试加载的任何其他库。这是代码片段:

为了验证 RMySQL 加载失败,我这样做了:

我得到以下输出:

[STRING*(“DBI”、“stats”、“graphics”、“grDevices”、“utils”、“datasets”、“methods”、“base”)]

无效的

可以清楚地看到,第二个 println 命令返回 null,这意味着 RMySQL 无法加载(当然 RMySQL 函数也没有任何工作)。我不知道为什么会这样。

我不知道我做错了什么,但如果有人能告诉我问题出在哪里,或者是否有更好的方法通过 JRI 加载库,我将不胜感激。

请注意,我在 sparc-sun-solaris2.10 和 RMySQL_0.8-0 构建上使用 R 版本 2.13.0。

0 投票
1 回答
2593 浏览

java - 通过 JRI 从 Java 创建 R 中的 data.frames

我可以使用 JRI 使用 Java 中的 R 环境,但我想知道是否有比以下方法更好的方法来创建数据帧(对数组使用 Scala 语法):

除了有点麻烦之外,请注意我刚刚污染了全局命名空间并意外破坏了标准class函数。

为了解决后两个问题,我还尝试先创建一个空的 data.frame 然后调用r.assign("df$predictor1", Array(1,2,3,1)),但这不起作用 - 它分配给一个名为df$predictor.

0 投票
1 回答
3154 浏览

r - 在 R 中,如何绘制到内存缓冲区而不是文件?

我正在使用 JRI 从 Java 生成 ggplot2 图。目前我必须将绘图写入磁盘。我如何在不通过文件的情况下执行此操作,即仅在内存中渲染绘图?

我尝试使用 Cairo 包绘制到 textConnection,但如果没有“R Connections Patch”,那将无法正常工作,经过一番谷歌搜索后发现这是古代历史。