使用 dplyr 中的 mutate()
和 if_else()
函数,配合 group_by()
函数实现对重复值的替换操作。具体代码如下:
library(dplyr)
# 示例数据
data <- data.frame(group = c(1, 1, 2, 2), value = c(1, 2, 2, 3))
# 按照 group 分组,替换重复的值为 NA
data %>%
group_by(group) %>%
mutate(value = if_else(duplicated(value), NA_real_, value))
运行结果如下:
# A tibble: 4 x 2
# Groups: group [2]
group value
1 1 1
2 1 NA
3 2 2
4 2 3
以上代码将每组中重复的值替换为了 NA。
上一篇:按组将一列数据分离