R中的平均值

时间:2016-10-05 08:55:43

标签: r aggregate mean

我想从具有1分钟值的数据集计算1分钟和5分钟的平均值。

数据集如下所示:

     time     BC
1  10:40:01  2217
2  10:40:02  5776
3  10:40:03  2111
4  10:40:04  1407
5  10:40:05  2056
.
.
.
n  11:30:58  6044

我找到了post,其中有人为此建议zoo(aggregate)功能。

我试过这样:

time<-as.character(time)
BC<-as.numeric(BC)
BC_mean<-aggregate(BC, trunc(time, "00:01:00"), mean)

然而,它不起作用。我不太确定我是否正确理解了聚合函数,我在网上找到的定义让我更加困惑。 有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

我们可以将“时间”转换为POSIXct类,并使用cut创建要在aggregate

中使用的组
brk = "5 min"
df2 <- transform(df1, timeGrp = cut(as.POSIXct(time, format = "%H:%M:%S"), breaks = brk))
aggregate(BC~timeGrp, df2, mean)