JRI,Java和R:变量之间没有累积变量

时间:2015-01-18 05:24:48

标签: java r rjava jri

在此代码中,变量xx返回0而不是20,不应该计算它并且它的值保持在evals之间吗?

     String[] Rargs = {"--vanilla"};
     Rengine re = new Rengine(Rargs, false, null);

     if (!re.waitForR()) {
         System.out.println("Cannot load R");
         return;
     }

     re.eval("xx = 0");
     for (int i=0; i<20; i++) {
         re.eval("xx =  xx + 1");
     }

     int xx = (re.eval("xx")).asInt();
     System.out.println("xx="+xx);

结果如下:

xx=0

1 个答案:

答案 0 :(得分:0)

这是答案,需要使用asDouble()

double xx = (re.eval("xx")).asDouble();