gpt4 book ai didi

python - 如何以半小时为间隔划分 Pandas 日期时间列

转载 作者:太空狗 更新时间:2023-10-29 22:24:22 26 4
gpt4 key购买 nike

我有如下所示的 Pandas 数据框

  date                      value     
2018-02-12 17:30:00 23
2018-02-12 17:34:00 45
2018-02-12 17:36:00 23
2018-02-12 17:45:00 56
2018-02-12 18:37:00 54

所需的 Pandas 数据框

  date                      value        half_hourly_bucket  
2018-02-12 17:30:00 23 17:30-17:59
2018-02-12 17:34:00 45 17:30-17:59
2018-02-12 17:36:00 23 17:30-17:59
2018-02-12 17:45:00 56 17:30-17:59
2018-02-12 18:37:00 54 18:30-18:59

同样,我有 24 小时的数据。我不想使用 if else 循环 48 次。在 pandas 中有更好的方法吗?

最佳答案

我相信需要Series.dt.floorstrftime并通过 Timedeltas 添加 29Min:

print (df)
date value
0 2018-02-12 18:00:00 23 <-changed values
1 2018-02-12 17:34:00 45
2 2018-02-12 17:36:00 23
3 2018-02-12 17:45:00 56
4 2018-02-12 18:37:00 54

s = df['date'].dt.floor('30T')
s1 = s.dt.strftime('%H:%M') + '-' + (s + pd.Timedelta(29 * 60, unit='s')).dt.strftime('%H:%M')
print (s1)
0 18:00-18:29
1 17:30-17:59
2 17:30-17:59
3 17:30-17:59
4 18:30-18:59
Name: date, dtype: object

关于python - 如何以半小时为间隔划分 Pandas 日期时间列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51998842/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com