我有很多复合术语,比如你好世界,早安,晚安......我想在我的语料库中找到它们,然后将它们替换为helloWorld,goodMorning,goodNight。所以通过这种方式我可以保留他们的概念。 我可以一个接一个地做,但由于有许多复合术语,它非常繁琐。我需要用R语言来做这件事。
答案 0 :(得分:0)
如果所有复合词仅由空格分隔,则可以使用gsub
:
> x = c("hello World", "good Morning", "good Night")
> y = gsub(pattern = " ", replacement = "", x = x)
> print(y)
[1] "helloWorld" "goodMorning" "goodNight"
您始终可以向pattern
参数添加更多模式。详细了解R here和here中的正则表达式。
修改强>
@ user4241750:是的,但我只想对特定化合物这样做 术语(有很多)并非所有语料库中的术语 语料库中的许多其他术语
如果您知道要更改的所有特定复合词,则可以在docs[[j]]
上指定。假设你想要改变的唯一条款是"简单的部分"和#34;早上好":
terms.to.change = c("simple parts","good morning")
for (j in seq(corpus)) {
positions.to.change = which(docs[[j]] %in% terms.to.change)
docs[[j]][positions.to.change] <- gsub(" ", "", docs[[j]][positions.to.change])
}