我想使用for循环删除包含另一个向量中的值的文本字符串的任何行。我知道我可以使用正则表达式,但是这是一个我经常重复的过程,所以我想将一个术语向量传递给一个循环,然后是一个更大的函数来节省时间。!grepl in for loop从数据帧中删除行
# Dataframe that always changes
keyword <- c('acme regulator','regulator','brand regulator')
position <- c(1, 23, 3)
# Terms I want to remove that always change
rmterms <- c('acme','brand')
t_allkwsum <- data.frame(keyword, position)
df <- for (i in 1:length(rmterms)){
x <- t_allkwsum[!grepl(rmterms[i],t_allkwsum$keyword),]
df2 <- rbind(df2,x)
}
df返回为NULL。我希望它返回t_allkwsum $关键字中不存在'rmterms'值的任何行。
't_allkwsum [!grepl(粘贴(rmterms,塌陷= '|'),t_allkwsum $关键字),]'这是你想要 – rawr
回报什么是预期的输出目前尚不清楚。 – TUSHAr