我在数据框的日期,小时和分钟中有3列
date hour minute
0 2018-01-01 0 10
1 2018-01-01 1 20
2 2018-01-01 2 50
3 2018-01-01 3 40
4 2018-01-01 4 7
5 2018-01-01 5 0
6 2018-01-01 6 2
我需要将这些列合并为1个timestamp列,但是时间戳应四舍五入到最接近的15分钟间隔。
所以我的预期输出将是
timestamp
2018-01-01 00:15
2018-01-01 01:15
2018-01-01 02:45
2018-01-01 03:45
2018-01-01 04:00
2018-01-01 05:00
2018-01-01 06:00
答案 0 :(得分:2)
您还可以使用:
(pd.to_datetime(df['date']) +
pd.to_timedelta(df['hour'], 'H') +
pd.to_timedelta(df['minute'], 'm')).dt.round('15min')