使用 R 在语料库中组合两个词
Combine two words in a corpus using R
我正在尝试使用 content_transform
函数将两个词合并为一个,作为 R 中 tm
包的一部分。
例如,我有位置数据,要创建词云,我需要组合 "san jose"、"san diego"、"san francisco"),否则 "san" 会出现最频繁的词。
据我所知,创建一个函数,例如,
combineUK <- content_transformer(function(x, pattern)
gsub(pattern,"UK",x,ignore.case = T))
但是,为每个城镇单独创建功能是不现实的。
我想知道是否有任何方法可以在 content_transform
中实现 paste()
功能?
所以,也许我遗漏了一些明显的东西。
由于您没有提供完整的可重现示例(copy-paste-run-able),我不知道您得到了什么,想要什么。但是,考虑例如
library(tm)
library(wordcloud)
par(mfrow = c(2,1), cex=.5)
txt <- c("hello san jose dudes", "welcome to san diego", "Did you like san francisco")
corp <- Corpus(VectorSource(txt))
wordcloud(corp, min.freq=1)
corp <- tm_map(corp, content_transformer(function(x) gsub("(san).(\w+)", "\1\2", x, ignore.case = TRUE)))
wordcloud(corp, min.freq=1)
我正在尝试使用 content_transform
函数将两个词合并为一个,作为 R 中 tm
包的一部分。
例如,我有位置数据,要创建词云,我需要组合 "san jose"、"san diego"、"san francisco"),否则 "san" 会出现最频繁的词。
据我所知,创建一个函数,例如,
combineUK <- content_transformer(function(x, pattern)
gsub(pattern,"UK",x,ignore.case = T))
但是,为每个城镇单独创建功能是不现实的。
我想知道是否有任何方法可以在 content_transform
中实现 paste()
功能?
所以,也许我遗漏了一些明显的东西。
由于您没有提供完整的可重现示例(copy-paste-run-able),我不知道您得到了什么,想要什么。但是,考虑例如
library(tm)
library(wordcloud)
par(mfrow = c(2,1), cex=.5)
txt <- c("hello san jose dudes", "welcome to san diego", "Did you like san francisco")
corp <- Corpus(VectorSource(txt))
wordcloud(corp, min.freq=1)
corp <- tm_map(corp, content_transformer(function(x) gsub("(san).(\w+)", "\1\2", x, ignore.case = TRUE)))
wordcloud(corp, min.freq=1)