Java R文本挖掘:在标记化步骤中从语料库中提取bigram时出错

Java R文本挖掘:在标记化步骤中从语料库中提取bigram时出错,java,r,Java,R,正在从url获取数据: suppressMessages(library(readr)) suppressMessages(library(RCurl)) amazon_url <- getURL('http://s3.amazonaws.com/assets.datacamp.com/production/course_935/datasets/500_amzn.csv', ssl.verifyhost=FALSE, ssl.verifypeer=FALSE) amazo

正在从url获取数据:

suppressMessages(library(readr))
suppressMessages(library(RCurl))


amazon_url <- getURL('http://s3.amazonaws.com/assets.datacamp.com/production/course_935/datasets/500_amzn.csv',
      ssl.verifyhost=FALSE, ssl.verifypeer=FALSE)
amazon <- read.csv(textConnection(amazon_url), header = TRUE)     
基于文本组织的
qdap
包构建清理功能:

suppressWarnings(library(qdap))
qdap_clean <- function(x) {
x <- replace_abbreviation(x)
x <- replace_contraction(x)
x <- replace_number(x)
x <- replace_ordinal(x)
x <- replace_symbol(x)
x <- tolower(x)
return(x)
}
suppressWarnings(library(tm))
tm_clean <- function(corpus) {
      corpus<- tm_map(corpus, removePunctuation)
      corpus <- tm_map(corpus, stripWhitespace)
      corpus <- tm_map(corpus, removeWords,
      c(stopwords("en"), "Amazon","company"))
      return(corpus)
}
单词清洗:

amzn_cons <- qdap_clean(amazon_cons)
amzn_cons <- VCorpus(VectorSource(amzn_cons))
amzn_cons_corp <- tm_clean(amzn_cons)

如何解决这个错误

为了清晰和格式,我对你的问题进行了编辑。请注意不要丢失任何重要信息。Tks,非常感谢您的帮助@黄在很多场合下提出这个问题,似乎问题可能与java安装有关,我建议您考虑以下几点,以确保java配置适合于目的。如果您使用Linux机器,尝试使用$SUDO RCMD JavaReCOF,如果您看到一个错误,那么您的java安装就有问题10。stop(structure(list)(message=“java.lang.NullPointerException”)、call=.jcall(“rwekanterfaces”、“[S”、“tokenize”、.jcast(tokenizer”、“weka/core/tokenizers/tokenizer”)、.jarray(as.character(control))、jobj=)、.Names=c(“message”、…9..jcheck()8..jcall(“rwekanterfaces”、“[S”、“tokenize”、.jcast(tokenizer))、tokenizer、,“weka/core/tokenizers/Tokenizer”),.jarray(as.character(control)),.jarray(as.character(x)))7.NGramTokenizer(x,weka_control(min=3,max=3))6..tokenize(doc)@ DeNESH.HMNI已经编辑了您的问题,以明确和格式化。请注意没有必要的信息丢失。TKS,非常感谢您的帮助!@黄先生这个问题在相当多的场合下,似乎问题可能与java安装有关,我建议您考虑以下内容以确保您的java配置。如果您使用的是linux机器,请尝试执行$sudo R CMD javareconf,如果您看到错误,则说明您的java安装存在问题10.stop(structure(list(message=“java.lang.NullPointerException”,call=.jcall”(.jcall)(“RWekaInterfaces”),“[S”,“tokenize”,.jcast(tokenizer,“weka/core/tokenizers/tokenizer”),.jarray(as.character(control))、.jarray(as.character(x))、jobj=)、.Names=c(“message”、…9..jcheck()8..jcall(“rwekanterfaces”、“[S”、“tokenize”、.jcast(tokenizer”、“weka/core/tokenizers/tokenizer”)、.jarray(as.character(control))、.jarray(as.character(x))7.NGramTokenizer(x,weka_control(min=3,max=3))6..tokenize(doc)@Dinesh.hmn
amzn_cons <- qdap_clean(amazon_cons)
amzn_cons <- VCorpus(VectorSource(amzn_cons))
amzn_cons_corp <- tm_clean(amzn_cons)
    suppressWarnings(library(RWeka))
    tokenizer <- function(x) 
    NGramTokenizer(x, Weka_control(min = 2, max = 2))
  amzn_c_tdm <- TermDocumentMatrix(
  amzn_cons_corp,control = list(tokenize = tokenizer) )
Error in .jcall("RWekaInterfaces", "[S", "tokenize", .jcast(tokenizer,  : 
  java.lang.NullPointerException