R Ошибка при использовании RKEA, RWeka и rJAva вместе
В своем коде я хочу сначала использовать пакет RKEA. Позже я хотел бы использовать пакет RWeka. Эти два пакета работают по отдельности, но когда я пытаюсь использовать их последовательно, возникают некоторые проблемы. Итак, это мой пример кода:
Sys.setenv(JAVA_HOME="C:\\Program Files\\Java\\jdk1.8.0_45\\jre")
if (!require("pacman")) install.packages("pacman")
library("pacman")
pacman::p_load("rJava", "RKEA", "RWeka", "tm")
data("crude")
# RKEA
keywords <- list(c("Diamond", "crude oil", "price"),
c("OPEC", "oil", "price"),
c("Texaco", "oil", "price", "decrease"),
c("Marathon Petroleum", "crude", "decrease"),
c("Houston Oil", "revenues", "decrease"),
c("Kuwait", "OPEC", "quota"))
tmpdir <- tempfile()
dir.create(tmpdir)
model <- file.path(tmpdir, "crudeModel")
createModel(crude[1:6], keywords, model)
# RWeka
BigramTokenizer <- function(x) NGramTokenizer(x, Weka_control(min = 2, max = 2))
tdm <- TermDocumentMatrix(crude, control = list(tokenize = BigramTokenizer))
Часть RKEA работает нормально, но код RWeka выдает ошибку
Error in .jcall(man, "Ljava/lang/Object;", "objectForName", as_qualified_name(name)) :
java.lang.IncompatibleClassChangeError: Implementing class
Затем я должен переустановить RWeka, и он работает:
install.packages("RWeka")
Sys.setenv(JAVA_HOME="C:\\Program Files\\Java\\jdk1.8.0_45\\jre")
library("RWeka")
BigramTokenizer <- function(x) NGramTokenizer(x, Weka_control(min = 2, max = 2))
tdm <- TermDocumentMatrix(crude, control = list(tokenize = BigramTokenizer))
Но тогда часть RKEA больше не работает...
Я надеюсь, что кто-нибудь может помочь мне с этой проблемой.