【发布时间】:2020-07-13 13:00:32
【问题描述】:
我有这个以 5 秒为间隔收集的时间序列数据帧 (df)。对每个 ID 值重复每个时间值(仅显示 ID 1001 和 1002)。我希望能够按每个 ID 的每分钟间隔对 Data 列进行 bin/sum。
Time ID Data
2010-01-10 13:45:00 1001 0
2010-01-10 13:45:05 1001 1
2010-01-10 13:45:10 1001 0
2010-01-10 13:45:15 1001 1
....
2010-01-10 13:45:00 1002 0
2010-01-10 13:45:05 1002 0
2010-01-10 13:45:10 1002 0
2010-01-10 13:45:15 1002 1
....
这是一个可重现的例子:
library(lubridate)
library(tidyverse)
# generate minimal example
df <- tibble(
Time = rep(
seq(
ymd_hms("2010-01-10 00:00:00"),
ymd_hms("2010-01-10 23:59:55"),
"5 sec"),
2
)
)
df$ID <- rep(c("1001","1002"), each = nrow(df)/2)
df$Data <- rnorm(nrow(df))
我希望我的输出数据框看起来像
Time ID Data
2010-01-10 13:45 1001 2
2010-01-10 13:46 1001
2010-01-10 13:47 1001
2010-01-10 13:45 1002 1
2010-01-10 13:46 1002
2010-01-10 13:47 1002
【问题讨论】:
-
如果您包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出,则更容易为您提供帮助。现在您的示例输入不是我们可以轻松复制/粘贴到 R 中的东西,因为如果空格和“...”s。最好分享
dput()或类似的东西。