H,
我有一个像这样的数据框:
d <- data.frame(v1=seq(0,9.9,0.1),
v2=rnorm(100),
v3=rnorm(100))
> head(d)
v1 v2 v3
1 0.0 -0.01431916 -0.5005415
2 0.1 -1.01575590 1.5307473
3 0.2 1.00081065 -0.1730830
4 0.3 -1.20697918 0.5105118
5 0.4 -2.16698578 -1.0120544
6 0.5 0.33886508 0.4797016
我现在想要一个新的数据框,该数据框汇总所有区间0-0.99、1-1.99、2-2.99、3-3.99等中的值。
像这样
start end mean.v2 mean.v3
0 1 0.2 0.1
1 2 0.5 0.4
等等
谢谢
更新,我应该补充一点,在我的真实数据集中,每个时间间隔的观察值具有不同的长度,并且它们并不总是从零开始或以10结束
最佳答案
这是@akrun建议的使用cut()
的一种方法:
d %>% mutate( ints = cut(v1 ,breaks = 11)) %>%
group_by(ints) %>%
summarise( mean.v2 = mean(v2) , mean.v3 = mean(v3) )
关于r - 使用dplyr将组汇总为间隔,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36158017/