RCaller: тот же код работает в rstudio, а не в rcaller

Я использую RCaller для вызова R из java-программ. Компьютер, на котором я пытаюсь вызвать R с помощью RCaller, не может получить доступ к Интернету; теперь у меня такая ситуация: из 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, все будет работать довольно хорошо.


person Angelo Immediata    schedule 12.07.2013    source источник
comment
Что пусто, XML-файл, который RCaller генерирует и передает R, или файл, который R возвращает, /tmp/Routput7266683884330110613 ?   -  person mbatchkarov    schedule 12.07.2013


Ответы (2)


Как я это решил: (я использую 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 в качестве источника). это прикреплено

person user2622038    schedule 26.07.2013

новая версия этой библиотеки немного быстрее, не требует пакета R Runiversal и были исправлены некоторые ошибки. Попробуйте здесь

person jbytecode    schedule 13.04.2014