【发布时间】:2016-05-24 19:27:14
【问题描述】:
这是我正在处理的一些数据的最小工作示例。
set.seed(42)
value <- sample(1:10, 10)
group <- rep(700, each= 10)
order <- c(1,1,1,2,2,2,2,2,2,2)
df <- as.data.frame(cbind(value, group, order))
value group order
1 10 700 1
2 9 700 1
3 3 700 1
4 6 700 2
5 4 700 2
6 8 700 2
7 5 700 2
8 1 700 2
9 2 700 2
10 7 700 2
我想同时按“组”和“顺序”分组,然后找到“顺序”滞后的值的平均值。理想情况下,这会产生一个看起来像
的数据框 value group order mean
1 10 700 1 NA
2 9 700 1 NA
3 3 700 1 NA
4 6 700 2 7.33
5 4 700 2 7.33
6 8 700 2 7.33
7 5 700 2 7.33
8 1 700 2 7.33
9 2 700 2 7.33
10 7 700 2 7.33
我正在使用dplyr 和group_by,但我无法找到使用mutate 和mean() 来引用前一组的方法。
任何帮助都会很棒。
谢谢
【问题讨论】: