我有一个 grails 应用程序,我想在其中使用 Renjin 使用 R 进行一些统计。
我的 grails 应用程序中的代码是这样的:
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("Renjin");
engine.eval("data <- read.table('/path/to/my/app/R/file.csv', sep=',', na.strings=c('',' ','-','--'))");
运行我的代码时,出现以下异常:
ERROR errors.GrailsExceptionResolver - IndexOutOfBoundsException 在处理请求时发生:
…………
索引:49,大小:49。堆栈跟踪如下:消息:索引:49,大小:49 行 | 方法->> 635 | java.util.ArrayList 中的 rangeCheck
我意识到 java 数组使用基于零的索引,而 R 数组使用基于 1 的索引,我认为问题与此有关。有没有办法解决这个问题?
此外,CSV 有 49 列。