0

Java プログラムから R を呼び出すために RCaller を使用しています RCaller を使用して R を呼び出そうとしている PC がインターネットにアクセスできません。Java から R コードを書き、RCode を使用してこのコードを R に追加します。生成されたコードは次のとおりです。

packageExist<-require(Runiversal)
if(!packageExist){
  install.packages("Runiversal", repos=" http://cran.r-project.org")
}

source("/tmp/liveness/helper.R")
source("/tmp/liveness/model-nbd.R")
source("/tmp/liveness/model-pareto-nbd.R")
source("/tmp/liveness/model-bg-nbd.R")
source("/tmp/liveness/model-cbg-cnbd-k.R")
cdData <- read.table("/tmp/liveness/data.csv", head=T)
names(cdData)[2] <- "x";
bgMleFit <- bgEstimateParameters(cdData, list(r=1, alpha=2, a=1, b=2));
summary(bgMleFit);
cdBgParams <- as.list(coef(bgMleFit));
t <- 2;
cdBgCe <- bgConditionalForecast(cdData, cdBgParams, t);
cat(makexml(obj=cdBgCe, name="cdBgCe"), file="/tmp/Routput7266683884330110613")

このコードをJavaプログラムで実行すると、生成されたXMLファイルが空であるため、XMLファイルを解析しようとすると例外が発生します生成されたコードをコピーしてRStudioに貼り付けると、すべてうまく機能します

4

2 に答える 2

1

私がそれを解決した方法:(私は64ビットバージョンのRを使用しています)、コードで次の行を変更しました: caller.setRscriptExecutable("C:/Program Files/R/R-3.0.1/bin/Rscript "); 次の行に: caller.setRscriptExecutable("C:/Program Files/R/R-3.0.1/bin/x64/Rscript.exe");

(ソースとして RCaller-2.0.7.jar を使用していることに注意してください)。付いています

于 2013-07-26T09:00:19.423 に答える
0

このライブラリの新しいバージョンは少し高速で、R パッケージ Runiversal を必要とせず、いくつかのバグが修正されています。ここで試してみてください

于 2014-04-13T08:50:09.863 に答える