问题标签 [renjin]
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 - 在中采购多个 R 文件
目前我在我的本地机器上使用 R,在那里我可以有条件地获取多个 R 脚本(因为它们被放置在我的本地驱动器中)。
但是,当我需要在 Google Data Flow 中的 RENJIN 上使用相同的脚本来实现并行性时,我无法获取文件。
我有多个带有 .R 扩展名的 R 脚本文件。我需要读取主 R 脚本文件并需要在运行时传递到数据流中,但主 R 文件必须是引用其他 R 脚本文件的源标记。当从 java 读取主要 R 文件内容并将其传递给 google 数据流时,Jave 无法解释引用其他 R 脚本文件的 R 文件中的源标记。
为了处理这种情况,我可能会使用一种不整洁的解决方案将整个代码保存在一个文件中。具有不同的函数名称。
Renjin 有什么方法可以保存所有需要使用的 R 脚本文件并在运行时传递给谷歌数据流。
java - 从 R (Renjin) 中的字符串表达式中获取变量名称
我正在使用 Renjin 来评估我的 Java 程序中的 R 公式。基本上,用户在文本字段中键入 R 公式,我希望 R/Renjin 为我进行解析,并返回该表达式中的变量列表。假设用户输入a*b,我想要["a", "b"]
结果。
我查看RParser.parse()
了 Java 部分的方法。但是当我打电话时,RParser.getResult()
我得到一个SEXP
对象,但我找不到从中获取变量名称的方法。
在 R 侧,我看了看parse(text="a*b")
。我可以eval()
,但我也没有找到获取名称的方法。
有任何想法吗?
编辑
从 R 中,可以通过以下方式实现:
问题是,当我用 Renjin 运行它时,我得到Exception in thread "main" org.renjin.eval.EvalException: getParseData() is not currently supported by Renjin
.
还在找……</p>
java - 仁进不承认德语变音
我有一个广泛使用德语变音符号的文件。我编写了一个脚本来处理在本机 R (RStudio) 中正常工作的文件。不幸的是,在使用 Renjin 时,所有变音符号都设置为文件字符串中的未知字符。由于文件结构的原因,我使用 readLines-command 来读取文件。在这种情况下,命令 read.table() 不是正确的解决方案。
我想使用 Renjin,因为我在 Java 团队工作,在 Renjin 的帮助下,我可以保留我们的工作环境,这当然是基于 Java 的。
Java 正确识别变音符号(使用正确的文件编码)。我还检查了 Renjin 是否正确打印了变音符号,但事实并非如此。我已经尝试将 Renjin 中的 R 语言环境设置为“German_Germany.1252”。因此我使用了以下 R 命令:
engine.eval("Sys.setlocale(category = 'LC_ALL', locale = 'German_Germany.1252')")
然后正确设置本地。但是,仁进根本不认识变音符号。我在打印文件的一行时检查了它,但也有一个字符直接传递给 Renjin(使用:)engine.eval("print('äöß')")
。
你知道如何解决这个问题吗?如果没有,我应该在 github 上打开一个问题吗?
java - Renjin IOException 在加载包 Rweka 时,找不到函数 '.jfield'
我正在尝试在 Java 程序中执行 R 脚本,所有依赖项都使用 Maven 安装,但问题仍然存在。
在我解决问题的研究中,我发现 jfield 是 rJava 提供的一个函数,但我不确定 rJava(Renjin 包)是否实现了它。
¿ 有没有办法检查这个?¿ 或者我错过了什么?
我的程序使用了 Renjin 支持的所有库:
- rJava
- 威卡
- RWekajars
我正在通过 Maven 使用 beta 驱动的公共 repo 来安装它们。这是主要课程:
这里是我的 pom.xml,
运行程序时的第一行输出:
提前致谢!
r - 在 Renjin 中使用日期和时间
我有点迷茫,我怎样才能将一组日期时间传递给 renjin (虽然字符串真的很痛苦)。它可以是 Joda 或 Java dateTime 类或类似的
我还没有找到日期时间类型。
java - java - 如何在java renjin的文本窗格上显示输出?
我是java
and的初学者renjin
。我需要我的输出结果显示在我的jtextpane
,我该怎么做?我好累。如果你知道怎么做,请告诉我。谢谢
renjin - 仁进:engine.eval返回值
在 Renjin 中,返回的实际值是多少:
例如:
返回具有单个 10 值的 DoubleArrayVector。我想这是最后一次计算。
返回一个 data.frame (ListVector...)
有什么方法可以让 eval 返回上例中的 data.frame df 吗?
谢谢。
renjin - 仁进:打印“externalptr”
从 Java 代码中,我将一个 data.frame 推入 Renjin。此数据帧的第一个向量包含作为 ExternalPtr 的本机 Java 对象。一切正常,包括从 R 代码访问这些对象。尽管如此,我注意到使用 print() 函数打印这些对象(出于调试目的)并没有多大帮助。
正在打印类名和一种哈希码:
相似地
正在打印:
无论如何要调用#toString() 或任何其他Java 方法吗?
顺便说一句,我注意到打印整个数据框会引发异常:
有没有办法阻止这种情况?
r - FileReader 找不到 R 脚本
我尝试在 JavaFx 中运行我的 R 脚本。我为此目的使用 Renjin,它似乎与我在内部运行的语句一起正常工作。但我想运行一个外部 R 脚本。该项目是使用 Maven 设置的,因此路径应该很简单,因为 R 脚本位于资源文件夹中。该路径在我加载 FXML 文件时有效,所以我很困惑为什么它找不到我的脚本。
这是一个简短的示例:
有什么遗漏吗?提前致谢!
编辑1:
使用我的 FXML 文件,它可以与“/”路径一起使用,如下所示:
编辑2:
删除他的评论的人提出了这个:
如果脚本位于 pom.xml 文件所在的根目录中,则它可以工作。@James_D 使它工作,因此 R 脚本可以位于资源文件夹中 - 非常感谢!
r - 以逗号分隔的字符串形式返回一个数字
背景
由于Renjin 中的错误,该format
函数族不可用,但sprintf
可以工作。
代码
这是一个将数字转换为逗号分隔字符串的替换函数:
问题
在代码完成工作的同时,如何加快实现速度?也就是说,如何编写代码以使用 R 白话(不使用format
, formatC
,prettyNum
等)并且不损坏Renjin 包(即不依赖)?