假设我有
tibble(id = c(1,1,2,2), data = c(1:4))
即
id data
1 1
1 2
2 3
2 4
我想添加一个具有id-secific手段的列,即我想要
id data id_means
1 1 1.5
1 2 1.5
2 3 3.5
2 4 3.5
我该怎么做?
答案 0 :(得分:1)
我们可以在通过' id'
进行分组后使用mutate
df1 %>%
group_by(id) %>%
mutate(id_means = mean(data))
# A tibble: 4 x 3
# Groups: id [2]
# id data id_means
# <dbl> <int> <dbl>
#1 1.00 1 1.50
#2 1.00 2 1.50
#3 2.00 3 3.50
#4 2.00 4 3.50
df1 <- tibble(id = c(1,1,2,2), data = c(1:4))