1

SO と他の場所を検索しましたが、サポートされていない major.minor バージョン 51 エラーを修正するものは何もありません。Java 8 をアンインストールし、Java 7 をインストールしました。ご協力ありがとうございました。私は使用しています: R 3.3.1 Java 8.91 OSX, el capitan library(NLP) library(tm) library(RWeka) library(rJava) library((RWekajars)) library(parallel) options(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)) 
4

2 に答える 2

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 を参照してください。

于 2016-06-20T19:00:43.793 に答える
0

私は一週間ずっとこの同じ問題を解決しようとしてきました。私が読んだJava 1.8は問題ありません。ただし、問題は R 内にインストールされている rJava パッケージにあるようです。次の行を使用して rforge.net からインストールすると、すべてが機能しました。

install.packages("rJava","http://rforge.net/",type="source")
于 2016-06-18T16:33:26.713 に答える