问题标签 [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.
java - Rserve eclipse basic example
Possible Duplicate:
How to make a simple program to call R from java using eclipse and Rserve
Its my first time to call R from java, I am using eclipse and I download the Rserve library using the command install.packages("Rserve") I dont know what to do on the eclipse side, how do i make a very simple program that can execute this code :
RConnection c = new RConnection();
REXP x = c.eval("R.version.string");
System.out.println(x.asString());
I need simple steps, I tried a lot but its not right and I dont know where to start from
Please stop putting low ratings and either help me or let someone else try
java - 使用 JRI 在 Java 中调用 R 的 sqldf 包
我已经使用 JRI 开发了 Java 代码,用于在 Java 上执行 R 代码。现在,我遇到了一个问题(在数据框的列中提取不同的值),我必须使用 R 的 sqldf 包并尝试在我的 Java 代码中使用它的功能。这是示例代码(橙色是默认情况下已经存在于 R 中的数据集):
上述代码的输出是:
这意味着“dframe”不包含任何内容。但是当我尝试在 R 上运行相同的 sqldf func: sqldf("select * from Orange") 时,它给了我 35 行。如何在 java 中使用 sqldf 函数以获得想要的结果?
我的环境变量设置如下:
java - Invoke R Language/script from java
How do we invoke R language / R script from java? Basically I need java kind of wrapper around R script.
Data will be given to java layer say method setData(double[]) which should in turn sends to R script - let us say setDataR(double []) method.
R script will perform some computation say calls method double[] computeR().
Java program will get the computation result by invoking double[] getData() which in turn delegates to R script to get the computated data.
How can this be performed by JRI, Rserv, Rcaller? I do not see any way to invoke Rscript methods? Please send sample. It should be simular to JNI (java, C++) invocations.
- Does within jvm I think multiple threads cannot invoke R script call correct? Any work around?
Thanks
linux - JRI REngine eval() 方法总是返回 null
我有一个在 Tomcat6 上运行的 Java servlet,它使用 JRI (rJava) 与安装在 Amazon linux 服务器上的 R 进行通信。我从源代码安装了 R,通过 cran 安装了 rJava,并为 Tomcat 设置了 R_HOME 和我的类路径。我必须在我的 java.library.path 目录之一中设置一些符号链接到必要的本机库(libjri.so、libR.so 和 libRblas.so),因为我无法配置 java.library.path 以包含这些目录他们安装在其中,但我认为这不是问题。当我跑
从 $R_HOME/library/rJava/jri/ 中的命令行,我得到了预期的输出,并且 REngine 类似乎通过 eval() 生成了 R 语句。但是当我从我的类中调用 eval() 时,几乎在所有情况下都会返回一个 null 而不是 REXP 对象。无论是否打开 DEBUG,都不会记录错误。我得到 REXP 返回的唯一情况是当我设置一个数组时,例如
在这种情况下,我得到一个 REXP,其 toString() 值为
但是,如果我随后使用 eval() 调用
我得到一个空值而不是预期的 REXP。在我的 Mac 上运行的代码是:
同样,这适用于我的 Mac,所以我很确定问题出在环境而不是代码上。我进行了几个小时的搜索,但尚未找到解决方案。任何帮助都会很棒。
r - Ubuntu 上的 JRI 致命错误
我已经在 Windows 7 上成功安装了 JRI 和 rJava。我现在正试图让它在 64 位操作系统的 Ubuntu 上工作。我可以在 R 中进行 rJava 调用,但让 JRI 工作更加困难。我正在运行 NetBeans 7.1.2,并且在设置R_HOME
和java.library.path
启用要加载的所有类方面遵循了各种技巧。也就是说,我已经过去了诸如"jri library not found"
和之类的错误消息"R_HOME not set"
。
从我的java代码中,我可以看到R_HOME = /usr/lib64/R
。
我现在得到的错误信息是
致命错误:您必须指定“--save”、“--no-save”或“--vanilla”
Rengine
首次调用时会发生这种情况:
Rengine r = new Rengine(args,false,null);
这似乎是来自 R 的错误消息;它似乎期待一个命令行参数。我没有看到任何带有此错误消息的帖子。有任何想法吗?谢谢,彼得
java - 新的 Rengine(...); 没有错误地失败
我正在尝试在 Windows 7 x64 系统上使用 Eclipse 设置 JRI。我在笔记本电脑上尝试过一次,它成功了。现在在我的桌面上它失败了,尽管 R、rJava 和 JRI 安装的所有内容都完全相同。
我将 JRI 和 R 路径正确设置为:
C:\Program Files\R\R-2.15.1\library\rJava\jri;C:\Program Files\R\R-2.15.1\bin\x64
我也在 Eclipse 中设置R_DOC_DIR
了等。
每次我尝试运行new Rengine(...);
它都会失败,没有任何错误或异常。调试显示:<terminated, exit value: 10>C:\Program Files\Java\jre6\bin\javaw.exe (01.10.2012 18:00:31)
有什么我可以尝试的吗?尽管到处都有相同的设置,但它在我的笔记本电脑上工作但在我的工作站上却不能工作,这真的让我很困扰。
编辑:用于获取 Rengine 对象的代码。
编辑:我最后一次尝试它时收到一条错误消息(创建 REngine 工作,这以前从未发生过),R 缺少一个注册表项。再次安装 R 2.15.1 后,它突然起作用了。现在重启后就和以前一样了。程序在创建 REngine 时崩溃。
r - gWidgetsWWW LocalServerStart() 通过 JRI
我正在尝试使用gWidgetsWWW
. 当使用我的标准 R 命令行时,这一切都很完美。我使用的代码例如:
但是,我想从 Java 中调用此代码。为此,我设置了 JRI,这似乎工作正常。我可以运行到目前为止我尝试过的任何 R 代码,除了这个。
我使用的代码是:
此代码将在我的默认浏览器中打开一个新选项卡,正如我所期望的那样。但是,此选项卡会保持连接,并且不会显示我想要的网页。当我终止 Java 脚本时,浏览器页面将更新无法建立连接。
我的 Java 控制台中提供的输出是:
java - JAR 文件中的 JRI(Java/R 接口)程序可以在没有安装 R 的系统上运行吗?
如果一个 JRI(Java/R Interface) 程序使用 R 来显示一个图形,它可以捆绑到一个 jar 中并在没有 R 的系统上运行吗?
java - 分发使用 JRI 和 R 的 Java 应用程序
所以我正在开发一个使用 JRI 库与 R 对话的 Java 应用程序(在 Windows 7 上的 Eclipse 中开发)。为了让 JRI 工作,我必须修改一堆环境变量(PATH、R_HOME、R_LIBS_USER),以便让 JRI 能够与 R 对话并使用所有已安装的用户库。由于这些都是特定于我的系统的,我该如何制作它,所以当我使它可分发时,它能够检测到用户 R 安装的位置?我是否必须让用户设置所有这些环境变量作为设置的一部分?谢谢您的帮助。
linux - 如何为 R 设置环境变量以在 RedHat Linux (RHEL6) 上的 Tomcat 中使用
我正在尝试在 RHEL6 (6.4) 上设置 R 和 Tomcat
我已经安装了 R 并且可以运行它。我已经安装了 Tomcat 7 并且可以托管文件文件。我已将应用程序打包为 WAR 文件并使用 tomcat 部署它。该应用程序在所有方面都运行良好,直到它使用任何 R 组件。
如 catalina.out 中所示,这是它崩溃并出现以下错误的地方:
我确实在 R 下安装了 rJava: install.packages("rJava") 它安装得很好,我在 R 的库文件夹中有 rJava。
我在 /etc/profile 中定义了以下内容:
据我了解,这应该为服务器上的所有用户全局设置 JAVA_HOME、R_HOME、PATH 和 LD_LIBRARY_PATH。我知道 Tomcat 在 root 下运行,我可以确认 root 能够通过“ echo $JAVA_HOME
”、“ echo $R_HOME
”、“ echo $LD_LIBRARY_PATH
”、“ echo $PATH
”看到上面设置的所有路径
所以我不确定为什么它抱怨它无法打开那些 .so 文件。
此外,当它崩溃时,它会关闭 Tomcat。
谢谢!