0

I want to create a java applet that takes various files and runs statistical tests on them. The user would choose a file and press the appropriate button for a statistical test. All of the statistical tests would be coded in R. Is there a way to "bridge" R and Java?

4

2 回答 2

0

有没有办法“桥接”R和Java?

肯定有。您可以使用JRI

这是我在上一个答案中提供的 JRI Java 到 R 示例(传递一个双精度数组并让 R 对其求和):

// Start R session.
Rengine re = new Rengine (new String [] {"--vanilla"}, false, null);

// Check if the session is working.
if (!re.waitForR()) {
  return;
}

re.assign("x", new double[] {1.5, 2.5, 3.5});
REXP result = re.eval("(sum(x))");
System.out.println(result.asDouble());
re.end();

以上基本上相当于在 R 中执行此操作:

x <- c(1.5, 2.5, 3.5)
sum(x)

注意:如果您使用的是 Eclipse 和 JRI,我强烈推荐这个插件来设置它。


或者,您只需创建从 Java 执行的 R 脚本,使用RScript.exe. 例如:

Rscript my_script.R

您会在 Internet 上找到大量解释如何从 Java 执行命令行命令的信息。我对它的了解不够多,无法给你举个例子。

于 2013-10-01T15:26:01.887 回答
0

您正在寻找的那种功能在 R 本身中很容易获得。由 RStudio 创建的Shiny 包完全满足您的需求:为 R 提供一个 Web 界面,包括简单的 GUI 元素。使用 Shiny 的优势在于它可以处理所有细节,让您专注于分析。从字面上看,我花了 2 个小时来安装 Shiny 并创建我的第一个 Web 应用程序。

免责声明:我与 RStudio 没有任何从属关系,我只是一个快乐的用户 :)。

于 2013-10-01T14:54:58.573 回答