我在r中有一个df,其中有许多记录,格式如下,"arrival_time"值为12小时。
id | 到达时间 | 等待时间值 |
---|---|---|
1 | 2020-02:00 | 10|
2 | 2020-02-20 12:04:00 | 5 |
99900 | 2020-02-20 23:47:00 | 8|
1000 | 2020 23:59:00 | 21
将DataFrame.resample
与GroupBy.first
一起使用,仅删除NaN
s并转换为DataFrame
:
df['arrival_time'] = pd.to_datetime(df['arrival_time'])
df = (df.resample('15Min', on='arrival_time')['wait_time_value']
.first()
.dropna()
.reset_index(name='wait_time_value'))
print (df)
arrival_time wait_time_value
0 2020-02-20 12:00:00 10.0
1 2020-02-20 23:45:00 8.0
使用dplyr
:
df %>%
group_by(period_start) %>%
summarise(wait_time = min(wait_time_value))