【发布时间】:2017-10-09 03:11:58
【问题描述】:
我有 1 个带有日期和时间的 pandas 数据框。我想再添加 1 个名为 session 的列,其值为上午下午、晚上、晚上。
Time
2016-07-10 01:18:00
2016-07-10 11:21:00
2016-07-10 17:29:00
2016-07-10 21:43:00
我想要像
这样的输出 Time Session
2016-07-10 01:18:00 Night
2016-07-10 11:21:00 Morning
2016-07-10 17:29:00 Afternoon
2016-07-10 21:43:00 Evening
如何做到这一点?
我通过定义中断来尝试这个
00:00 - 06:00 Night
06:00 - 12:00 Morning
12:00 - 18:00 Afternoon
18:00 -23:59 Evening
df.Time[(df.Time.dt.hour < 6) | (df.Time.dt.hour > 0) | (df.Time.dt.minute < 59) | (df.Time.dt.minute > 0)] = "Night"
但它不能正常工作。在此先感谢
【问题讨论】:
-
你的 2016-07-10 05:26:00 下午和早上怎么样?没有 AM PM 指定,也没有 24 小时制。它是基于顺序的吗?
-
@Scott Boston - 更正了问题。对不起。现在它会有意义