【发布时间】:2020-10-10 08:20:15
【问题描述】:
我有一个数据框,其中duration 列中的持续时间值和gaze_focus 列中的组值。
df1
duration gaze_focus
29 1.011 periphery
31 1.590 center
33 1.582 center
35 0.571 periphery
37 0.561 center
39 2.136 center
41 0.181 periphery
43 1.475 center
45 0.177 periphery
47 0.940 periphery
49 2.102 center
我想计算直接相邻的相同组值的总和以获得这个结果:
df2
duration gaze_focus
1 1.011 periphery
2 3.172 center
3 0.571 periphery
4 2.697 center
5 0.181 periphery
6 1.475 center
7 1.117 periphery
8 2.102 center
我知道诸如按组求和之类的数学运算可以使用例如aggregate 或 tapply 但我不知道如何按小块对值求和。感谢您的帮助!
可重现的数据:
df1 <- structure(list(duration = c(1.011, 1.59, 1.582, 0.571, 0.561,
2.136, 0.181, 1.475, 0.177, 0.94, 2.102), gaze_focus = c("periphery",
"center", "center", "periphery", "center", "center", "periphery",
"center", "periphery", "periphery", "center")), row.names = c(29L,
31L, 33L, 35L, 37L, 39L, 41L, 43L, 45L, 47L, 49L), class = "data.frame")
【问题讨论】: