首先,我们可以使用dplyr包来按组迭代数据。然后,使用mutate()函数和case_when()函数根据列值映射值。下面是代码示例:
library(dplyr)
# Example data
data <- data.frame(
group = c("A", "A", "B", "B", "C", "C"),
value = c(1, 2, 3, 4, 5, 6)
)
# Iterate by group and map values
mapped_data <- data %>%
group_by(group) %>%
mutate(mapped_value = case_when(
value == 1 ~ "Low",
value == 2 ~ "Medium",
value > 2 ~ "High",
TRUE ~ "Unknown"
))
# Output
mapped_data
这将输出类似以下结果的数据框:
# A tibble: 6 x 3
# Groups: group [3]
group value mapped_value
1 A 1 Low
2 A 2 Medium
3 B 3 High
4 B 4 High
5 C 5 High
6 C 6 High
上一篇:按组的唯一组合
下一篇:按组对定性变量进行排序并保留索引