【发布时间】:2015-09-11 15:53:25
【问题描述】:
如果在 R 中没有快速的 1-3 衬里,我肯定会使用 linux sort 和使用 groupby 的简短 python 程序,所以不要向后弯腰试图让一些疯狂的工作.这是输入数据框:
df_in <- data.frame(
ID = c(1,1,1,1,1,2,2,2,2,2),
weight = c(150,150,151,150,150,170,170,170,171,171),
start_day = c(1,4,7,10,11,5,10,15,20,25),
end_day = c(4,7,10,11,30,10,15,20,25,30)
)
ID weight start_day end_day
1 1 150 1 4
2 1 150 4 7
3 1 151 7 10
4 1 150 10 11
5 1 150 11 30
6 2 170 5 10
7 2 170 10 15
8 2 170 15 20
9 2 171 20 25
10 2 171 25 30
我想通过ID 和weight 进行一些基本聚合,但前提是该组位于df_in 的连续行中。具体来说,期望的输出是
df_desired_out <- data.frame(
ID = c(1,1,1,2,2),
weight = c(150,151,150,170,171),
min_day = c(1,7,10,5,20),
max_day = c(7,10,30,20,30)
)
ID weight min_day max_day
1 1 150 1 7
2 1 151 7 10
3 1 150 10 30
4 2 170 5 20
5 2 171 20 30
这个question 似乎与我想要的非常接近,但由于某种原因我在调整它时遇到了很多麻烦。
【问题讨论】:
标签: r