假设有一个数据框,其中有一个列名为“text”,现在需要根据“group”列的值,来搜索并替换“text”列中包含的特定字符串,在实现这一需求时可以使用dplyr和stringr包中的函数。
可以使用if_else()函数,以便根据字符串是否存在来设置新的值。同时,使用str_detect()函数来实现在“text”列中搜索特定字符串。以下是实现步骤:
library(dplyr)
library(stringr)
# 创建示例数据
df <- data.frame(
group = c(1, 1, 2, 2),
text = c("apple", "no", "banana", "yes")
)
# 用if_else()和str_detect()函数按组替换基于字符串的值
df <- df %>%
mutate(text = if_else(str_detect(text, "no|yes"), "new_value", text))
df
运行结果:
group text
1 1 apple
2 1 new_value
3 2 banana
4 2 new_value
下一篇:按组替换同一列中的值为另一个值。