【问题标题】:removing phrases (stopphrases) from corpus in R?从R中的语料库中删除短语(停用词)?
【发布时间】:2015-07-24 13:40:56
【问题描述】:

我可以使用 tm 包轻松删除停用词,但有没有简单的方法可以删除特定短语?我希望能够删除“早上好”这句话,但不能删除早上好后不跟上的情况。

例子:

x <- "Good morning. Great question...I'd say we had a good time."
doc.vec <- VectorSource(x)
doc.corpus <- Corpus(doc.vec)
doc.corpus <- tm_map(doc.corpus, stripWhitespace)
doc.corpus <- tm_map(doc.corpus, removePunctuation)
doc.corpus <- tm_map(doc.corpus, content_transformer(tolower))
doc.corpus <- tm_map(doc.corpus, removeWords, c(stopwords("english"), "good"))
dtm <- DocumentTermMatrix(doc.corpus, control=list())
inspect(dtm)

【问题讨论】:

    标签: regex r text tm stop-words


    【解决方案1】:

    只需将“早上好”添加到要删除的单词列表中即可。

    doc.corpus <- tm_map(doc.corpus, removeWords, c(stopwords("english"), "good morning"))
    

    如果你检查 dtm,你会发现你只剩下 1 个“good”,没有“morning”

    【讨论】:

      【解决方案2】:

      我不是很了解,但也许这只是一个简单的问题gsub

      gsub("[Gg]ood.morning", "", x)
      [1] ". Great question...I'd say we had a good time."
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-03
        • 2016-01-08
        • 2020-06-18
        • 2021-03-01
        • 1970-01-01
        相关资源
        最近更新 更多