我正在尝试将R用于一些基本的文本分析。
我有一个包含复杂数据类型的列。我希望维护一个单独的表,我可以使用它从第1个数据列中删除某些短语。
我尝试过gsubfn但没有任何成功。
例如
dirtydata <- c("JOHN COURT","@PETER","BOB 22","RUPERT BODY CORPORATE")
removefields <-c("COURT","BODY CORPORATE")
为什么
x <- gsubfn(removefields,"",dirtydata)
不起作用?
希望输出
c("JOHN ","@PETER","BOB 22","RUPERT ")
答案 0 :(得分:0)
试试这个。
dirtydata <- c("JOHN COURT","@PETER","BOB 22","RUPERT BODY CORPORATE")
removefields <-c("COURT | BODY CORPORATE")
x <- gsub(removefields, "", dirtydata)
答案 1 :(得分:0)
这适用于您放入removefields
的任何内容,并删除要删除的字符串周围的空白区域:
dirtydata <- c("JOHN COURT","@PETER","BOB 22","RUPERT BODY CORPORATE")
removefields <- c("COURT","BODY CORPORATE")
removefields <- paste0("\\s+", removefields, "\\s+", collapse = "|")
x <- gsub(removefields, "", dirtydata)
答案 2 :(得分:0)
我们可以使用tm
包
dirtydata <- c("JOHN COURT","@PETER","BOB 22","RUPERT BODY CORPORATE")
removefields <-c("COURT","BODY CORPORATE")
library(tm)
removeWords(dirtydata, removefields)
> removeWords(dirtydata, removefields)
[1] "JOHN " "@PETER" "BOB 22" "RUPERT "
答案 3 :(得分:0)
请使用R
的base
功能查找以下编辑过的代码
dirtydata <- c("JOHN COURT","@PETER","BOB 22","RUPERT BODY CORPORATE")
removefields <-c("COURT","BODY CORPORATE")
pastedFields = paste0(removefields,collapse = "|")
gsub(pastedFields,"",dirtydata)