gpt4 book ai didi

python - 有没有办法将24小时时间格式转换为一天的四个类别或四个象限?

转载 作者:行者123 更新时间:2023-12-01 00:41:04 24 4
gpt4 key购买 nike

我正在尝试将数据中的时间戳预处理为当天的四个类别。

这意味着我需要将对象数据类型转换为类别

早上 00:00:00 至 11:59:59

下午 12:00:00 至 15:59:59

晚上 16:00:00 至 19:59:59

夜间 20:00:00 至 23:59:59

我的时间戳数据看起来像

transaction timestamp
08:26:00
08:26:00
08:26:00
08:26:00
12:26:00
12:45:00
16:26:00
16:28:00
20:28:00
20:34:00

我期望上述列的输出为

time of day
Morning
Morning
Morning
Morning
Afternoon
Afternoon
Evening
Evening
Night
Night

我该如何清理这种类型的数据并将其转换为仅 4 个类别?

最佳答案

您可以通过 to_timedelta 将值转换为时间增量然后使用 cut :

df['transaction timestamp'] = pd.to_timedelta(df['transaction timestamp'])
#if values are python object times convert to strings
#df['transaction timestamp'] = pd.to_timedelta(df['transaction timestamp'].astype(str))

b = pd.to_timedelta(['00:00:00','12:00:00','16:00:00','20:00:00', '24:00:00'])
l = ['Morning','Afternoon','Evening','Night']
df['time of day'] = pd.cut(df['transaction timestamp'], bins=b, labels=l)

print (df)
transaction timestamp time of day
0 08:26:00 Morning
1 08:26:00 Morning
2 08:26:00 Morning
3 08:26:00 Morning
4 12:26:00 Afternoon
5 12:45:00 Afternoon
6 16:26:00 Evening
7 16:28:00 Evening
8 20:28:00 Night
9 20:34:00 Night

关于python - 有没有办法将24小时时间格式转换为一天的四个类别或四个象限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57345834/

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