2013-05-29 49 views
1

我正在使用RCaller 2.1.1-SNAPSHOT编写程序。问题是当我使用来自外部库的代码时,它说Routput文件是空的。这里是我的代码:RCaller Java文件过早结束aka XML文件为空

Random random = new Random(); 


    RCaller caller = new RCaller(); 
    RCode code = new RCode(); 

    caller.setRscriptExecutable("C:/Program Files/R/R-2.14.2/bin/x64/Rscript.exe"); 

    double[] data = new double[100]; 

    for (int i = 0; i < data.length; i++) { 
    data[i] = random.nextGaussian(); 
    } 

    code.addDoubleArray("x", data); 

    code.addRCode("setwd('C:/Radek/')"); 
    code.addRCode("wd=list.files()"); 
    code.addRCode("library(Biobase)"); 
    //code.addRCode("targets=read.AnnotatedDataFrame('targets.txt',row.names=1,as.is=TRUE)");// WHEN I USE THIS IT CRASH 
    code.addRCode("my.mean<-mean(x)"); 
    code.addRCode("my.var<-var(x)"); 
    code.addRCode("my.sd<-sd(x)"); 
    code.addRCode("my.min<-min(x)"); 
    code.addRCode("my.max<-max(x)"); 
    code.addRCode("my.standardized<-scale(x)"); 

    code.addRCode(
      "my.all<-list(mean=my.mean, variance=my.var, sd=my.sd, min=my.min, max=my.max, std=my.standardized)"); 
    caller.setRCode(code); 
    caller.runAndReturnResult("wd"); 

    String[] results; 
    results = caller.getParser().getAsStringArray("wd"); 
    System.out.println("Mean is " + results[0]); 

我选中此: 1 RUniversal安装并加载 2.库使用功能的下载和安装。 3当我将RCaller生成的文件中的rCaller请求放入R中时,它可以工作。 4. RScript路径中的斜杠很好,因为我使用注释有问题的行检查了结果,它起作用。

有人可以帮助我吗?

回答

0

这一般是关于包的安装程序和加载器用户的区别。最新的和实验性的RCaller 2.2.0不需要Runiversal。如果是你的问题仍然是当前你可以尝试一下,写在这里,如果问题仍然exists.You可以在official blog page of RCaller

0

遵循下载链接在你的代码

code.addRCode(
     "my.all<-list(mean=my.mean, variance=my.var, sd=my.sd, min=my.min, max=my.max, std=my.standardized)"); 
caller.setRCode(code); 

String[] results; 
results = caller.getParser().getAsStringArray("wd"); 

变化部分的一部分

caller.runAndReturnResult("wd"); 

caller.runAndReturnResult("my.all"); 

所以返回您准备列表FR om R到Java。然后使用代码

double[] results; 
results = caller.getParser().getAsDoubleArray("mean"); 

,并最终打印回到平均筛选

System.out.println("Mean is " + results[0]); 
相关问题