2016-06-14 2 views
1

Я искал SO и везде, и ничего не работает, чтобы исправить неподдерживаемую ошибку major.minor версии 51. Я удалил Java 8 и установил Java 7. Не повезло. Благодарим вас за помощь. Я использую: R 3.3.1 Java 8,91 OSX, эль Capitan библиотеки (NLP) библиотеки (тм) библиотеки (RWeka) библиотеки (rJava) библиотеки ((RWekajars)) библиотеки (параллельно) опции (mc.cores = 1) Здесь R код вызывает ошибку:Ошибка в RWeka в пакете 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)) 

ответ

0

Я пытался решить этот же вопрос всю неделю. Я использую Java 1.8, который я читаю, это нормально. Однако проблема, кажется, в пакете rJava, который устанавливается внутри R. Как только я установил из rforge.net, используя следующую строку, все сработало.

install.packages("rJava","http://rforge.net/",type="source") 
+0

@xanstorm Я удалил лишнюю запятую в коде, спасибо за указание, что из – pheeper

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 для получения дополнительной информации

Смежные вопросы