[英]Rcaller simple code - Error loading Runiversal
我有使用Rcaller的以下Java代碼。
RCaller caller = new RCaller();
RCode code = new RCode();
caller.setRscriptExecutable("/usr/bin/Rscript");
code.addRCode("install.packages(\"bbmle\")");
caller.redirectROutputToConsole();
caller.runOnly();
本質上,我試圖運行安裝R包的Java代碼(因為稍后我將在需要此包的Java中運行R代碼)。
運行此代碼時,我將在Java中獲得以下輸出
Error:Loading required package: Runiversal
但是,我的Mac上確實有Runiversal
軟件包。 任何想法這意味着什么,為什么我實際上看不到install.packages
方法的任何R
輸出,通常這很冗長?
更新:我應該注意,即使是諸如以下的簡單代碼也會導致相同的錯誤:
code.addRCode("x = c(1,2,3)");
code.addRCode("y = c(2,3,5");
code.addRCode("x+y");
caller.redirectROutputToConsole();
caller.runOnly();
更新:我還應該提到以下功能很好:
StringBuffer allCode = readFile("temp.R");
code.setCode(allCode);
double[] xvector = new double[]{1,3,5,3,2,4,5,6,7,8,9,21,22,25,27,25,34,39,31};
double[] yvector = new double[]{6,7,5,6,5,6,6,7,6,8,9,21,20,19,23,24,29,38,30};
code.addDoubleArray("X",xvector);
code.addDoubleArray("Y",yvector);
code.addRCode("fun(X,Y)");
溫度R:
fun = function(x,y) {
return(lm(y~x))
}
Java輸出:
Output:
Output:Call:
Output:lm(formula = y ~ x)
Output:
Output:Coefficients:
Output:(Intercept) x
Output: 2.445 0.825
Output:
R從庫中加載包。 如果在Java下啟動的R進程未搜索安裝Runiversal軟件包的庫,則可能會導致顯示錯誤消息。
因此:Runiversal軟件包的安裝目錄路徑(即庫)是什么? 與此相關的可能是什么用戶安裝了R軟件包,以及什么用戶正在運行Java代碼。
RCaller庫的2.2版本不需要R包Runiversal。 該包中實現了R到XML轉換器的緊湊版本。 在這里嘗試
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.