Как я могу использовать библиотеки R, такие как "dplyr" через Java RCaller
Я сделал графический интерфейс для Netbeans v.8.2, который использует некоторые Rscripts. Я использовал пакет Rcaller и Rjava. Мое соединение Java-R работает, когда я хочу сделать базовое исчисление. Но я не знаю, как я могу использовать библиотеки R, такие как dplyr через Java.
У меня есть класс Rclient, с которым я связываюсь со своими Rscripts внутри папки проекта.
Вот код Java, который правильно работает в Rscript с простыми вычислениями в классе "Rclient":
public static String subsetData(String fileName){
fileName=fileName.replace("\\","/");
Globals.detect_current_rscript();
final RCallerScriptEngine engine = new RCallerScriptEngine();
engine.put("fileName", fileName);
String outFileName=fileName + "_subset";
engine.put("outFileName",outFileName );
runScript(engine, "2_subset_data_.R");
engine.close();
return outFileName;
}
Вот скрипт R (2_subset_data_.R), для которого нет вызова библиотеки R:
data <- read.csv(fileName);
mydata <- subset(data,
select = c(
"X.U.FEFF",
"kazaSiraNo",
"surucuVatandaslikNo"
));
write.csv(mydata, file = outFileName);
Вот код Java, который выполняется НЕ ПРАВИЛЬНО в Rscript с вычислениями пакета dplyr в классе "Rclient":
public static String cleanData(String fileName){
fileName=fileName.replace("\\","/");
Globals.detect_current_rscript();
final RCallerScriptEngine engine = new RCallerScriptEngine();
engine.put("fileName", fileName);
String outFileName=fileName + "_clean";
engine.put("outFileName",outFileName );
runScript(engine, "clean_data.R");
engine.close();
return outFileName;
}
Вот скрипт R (clean_data.R), КОТОРЫЙ НЕСКОЛЬКО БИБЛИОТЕК вызывает код:
library(Runiversal);
library(dplyr);
data <- read.csv(fileName);
mydata <- dplyr::filter(data,
nchar(data[,"surucuVatandaslikNo"]) == 11);
write.csv(mydata, file = outFileName);
Может ли кто-нибудь помочь мне использовать эти библиотеки? Как проверить, действительно ли загружены библиотеки?