2014-07-17 87 views
-2

我有以下代码。对RList的操作

public void rFun() { 

    Rsession instance = RConnect.getInstance(); 
    instance.eval("load(\".RData\")"); 

    REXP x = instance.eval("xyz <- c(10,20,30)"); 

    try { 
     System.out.println("xyz -> "+x.asString()); 

    } catch (REXPMismatchException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
} 

我创建一个RLIST,但是当我试图让Java中的列表是仅显示第一个值,即10

如何获取列表中的所有值?

+0

可能重复的[Java-R集成?](http://stackoverflow.com/questions/7451716/java-r-integration) –

回答

1

您可以使用for循环并获取值。

for(int i=0; i<x.asInteger(); i++){ 
    System.out.println(x.asStrings[i]); 
} 
+0

它的工作。谢谢。 – Abhi

1

也可以使用

x.asDoubleMatrix()[][] 

数据帧或包含数字或整数值矩阵。