【发布时间】:2021-08-08 14:24:45
【问题描述】:
我在 r 中有一个 df,其中包含许多采用以下格式的记录,以及 12 小时内的“arrival_time”值。
| id | arrival_time | wait_time_value |
|---|---|---|
| 1 | 2020-02-20 12:02:00 | 10 |
| 2 | 2020-02-20 12:04:00 | 5 |
| 99900 | 2020-02-20 23:47:00 | 8 |
| 10000 | 2020-02-20 23:59:00 | 21 |
我想创建一个新的 df,它在到达时间段的每个 15 分钟时隙中都有一行,以及该时隙中最早到达时间的记录的 wait_time_value。因此,在上面的示例中,新 df 的第一行和最后一行将如下所示:
| id | period_start | wait_time_value |
|---|---|---|
| 1 | 2020-02-20 12:00:00 | 10 |
| 48 | 2020-02-20 23:45:00 | 8 |
我已经使用下面的代码来实现每 15 分钟范围内所有记录的平均等待时间,但我不确定如何选择最早记录的值?
df$period_start <- align.time(df$arrival_time- 899, n = 60*15)
avgwait_df <- aggregate(wait_time_value ~ period_start, df, mean)
【问题讨论】:
-
您能否提供更易于复制的可重现格式的数据?阅读how to give a reproducible example