![](/img/trans.png)
[英]tm_map and stopwords failed to remove unwanted words from the corpus created in R
[英]text analysis - looking to remove lowercase words from my corpus. Can I use gsub? Using tm_map to clean-up
我正在寻找一个语料库以查找适当的名称。 我将如何删除所有小写字母的单词? removeWords? gsub?
doc.corpus <- tm_map(doc.corpus, removePunctuation)
doc.corpus <- tm_map(doc.corpus, removeNumbers)
doc.corpus <- tm_map(doc.corpus, removeWords, stopwords("english"))
doc.corpus <- tm_map(doc.corpus, removeWords, stopwords("SMART"))
doc.corpus <-tm_map(doc.corpus, removeWords, lower) ****something like this?****
inspect(doc.corpus[8])
尝试以下方法。 根据所需的输出,您可能必须重新排列替换项的顺序。 在下面的示例中,例如,从缩写“ US”中删除了点,从而使“ US”只有两个单独的字母。 如果要保留这样的缩写,则必须调整正则表达式。
library(tm)
data(crude)
corp <- crude
corp <- tm_map(corp, content_transformer(gsub), pattern="(?<=\\s|^)([a-z]+)(?=\\s|$|\\W)", replacement = " ", perl=T)
corp <- tm_map(corp, content_transformer(gsub), pattern="\\d|\\W", replacement = " ", perl=T)
corp <- tm_map(corp, content_transformer(gsub), pattern="\\s+", replacement = " ", perl=T)
inspect(corp[[1]])
teststring <- "aaa Bbb ccc Ddd eee Fff"
trimws(gsub("\\b[a-z]+\\b", "", teststring))
#[1] "Bbb Ddd Fff"
上面的gsub
函数删除所有小写单词。 因此,您可以在代码中使用此gsub
函数,如下所示:
removeLowerCase <- function(x) trimws(gsub("\\b[a-z]+\\b", "", x))
doc.corpus <- tm_map(doc.corpus, content_transformer(removeLowerCase))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.