我目前正在使用Java程序包JRI,以便使用R提供的一些功能。
让我们说,我的R命令是这样的:
qqnorm(sql_data[["LifeExpectancy"]],
main="Life Expectancy")
如果我将它放入我的REngine.eval()函数中,它会崩溃,因为我应该将整个命令输入一个" eval()"命令。它可以在我的普通R命令行中工作......
主要问题是,每当下一个订单分成多行时,我很难预测。那么,我该如何解决这个问题?
我想过计算括号,但括号的数量并不总是均匀的。 (比方说,字符串中包含一些括号)还有其他想法吗?
编辑:我想,我的观点不够明显。试试这个:
System.out.println(re.eval("a <- c(3,4)"));
System.out.println(re.eval("a"));
System.out.println(re.eval("b <- c(3,4"));
System.out.println(re.eval(",5)"));
System.out.println(re.eval("b"));
你会看到,对于前两个命令,你会收到
[REAL* (3.0, 4.0)]
[REAL* (3.0, 4.0)]
但其余的,b,是这样的:
[NULL ]
[NULL ]
null
一般来说,这是一个问题;通常这是有效的,但不是在JRI!