Ошибка в RWeka в пакете R
Я искал SO и везде, и ничего не работает, чтобы исправить неподдерживаемую ошибку major.minor версии 51. Я удалил Java 8 и установил Java 7. Не повезло. Спасибо за помощь. Я использую: R 3.3.1 Java 8.91 OSX, библиотека el capitan library(NLP), библиотека (tm), библиотека (rWava), библиотека ((RWekajars)), библиотека (параллельная), параметры (mc.cores=1). код R, вызывающий ошибку:
trigram <- function(x){NGramTokenizer(x,control=Weka_control(min=3,max=3))}
tdm <- TermDocumentMatrix(corpus2,control=list(tokenize=trigram))
Here is the error I get.
Error in .jnew(name) :
java.lang.UnsupportedClassVersionError: weka/core/tokenizers/NGramTokenizer : Unsupported major.minor version 51.0
9 stop(structure(list(message = "java.lang.UnsupportedClassVersionError: weka/core/tokenizers/NGramTokenizer : Unsupported major.minor version 51.0",
call = .jnew(name), jobj = <S4 object of class structure("jobjRef", package = "rJava")>), .Names = c("message",
"call", "jobj"), class = c("UnsupportedClassVersionError", "ClassFormatError",
"LinkageError", "Error", "Throwable", "Object", "Exception", ...
8 .jnew(name)
7 NGramTokenizer(x, control = Weka_control(min = 3, max = 3))
6 .tokenize(doc)
5 FUN(X[[i]], ...)
4 lapply(X = X, FUN = FUN, ...)
3 mclapply(unname(content(x)), termFreq, control)
2 TermDocumentMatrix.VCorpus(corpus2, control = list(tokenize = trigram))
1 TermDocumentMatrix(corpus2, control = list(tokenize = trigram))
2 ответа
Я также использовал NGramTokenizer(x, control = Weka_control(min = 3, max = 3))
и это создавало ошибки для меня. Я наткнулся на этот токенизатор, и он решил проблему для меня.
TrigramTokenizer <-
function(x)
unlist(lapply(ngrams(words(x), 3), paste, collapse = " "), use.names = FALSE)
пожалуйста, смотрите: https://rpubs.com/hokumski/capstone-milestone-week2 для получения дополнительной информации
Я пытался решить эту проблему всю неделю. Я использую Java 1.8, который я прочитал в порядке. Однако проблема, похоже, заключается в пакете rJava, который устанавливается внутри R. Как только я установил с rforge.net, используя следующую строку, все заработало.
install.packages("rJava","http://rforge.net/",type="source")