目标:
我R
是R
. 在当前的任务中,我想替换一些出现在 a 中的单词,corpus
同时保持corpus
.
Gsub
不允许将向量用于模式和相应的替换,所以我决定编写一个修改后的Gsub
函数。(我知道这个Gsubfn
功能,但我也想培养一些编程技能。)
数据生成
a<- c("this is a testOne","this is testTwo","this is testThree","this is testFour")
corpus<- Corpus(VectorSource(a))
pattern1<- c("testOne","testTwo","testThree")
replacement1<- c("gameOne","gameTwo","gameThree")
修改后的 Gsub
gsub2<- function(myPattern, myReplacement, myCorpus, fixed=FALSE,ignore.case=FALSE){
for (i in 1:length(myCorpus)){
for (j in 1:length(myPattern)){
myCorpus[[i]]<- gsub(myPattern[j],myReplacement[j], myCorpus[[i]], fixed=TRUE)
}
}
}
代码执行
gsub2(pattern1,replacement1,corpus,fixed=TRUE)
但是,实际语料库中不会产生任何变化。我认为这是因为所有更改都在函数内进行,因此仅限于函数内。然后我尝试返回语料库但R
无法识别语料库对象。
有人可以指出我正确的方向吗?谢谢。