首页 > 解决方案 > Python将纪元时间转换为带有日期的白天或夜晚

问题描述

我对python真的很陌生。我有一个包含纪元时间的数据集,并且想要创建两个新列(一个用于日期,另一个用于 Shift(白天或晚上 [6 AM-6 PM 属于 Day,6 PM 到 6 AM 属于 NIGHT]))。这是我的数据框:

在此处输入图像描述

我需要什么:

在此处输入图像描述

标签: pythonpandaspython-datetime

解决方案


In [23]: df
Out[23]:
     ID        time
0  1001  1592290638
1  1001  1592290649
2  1001  1592290659

In [24]: df["Date"] = pd.to_datetime(df['time'],unit='s').dt.strftime("%d %b")

In [25]: df["Shift"] = pd.to_datetime(df['time'],unit='s').apply(lambda x: "Day" if x.hour >= 6 and x.hour <= 18 else "Night")

In [26]: df
Out[26]:
     ID        time    Date Shift
0  1001  1592290638  16 Jun   Day
1  1001  1592290649  16 Jun   Day
2  1001  1592290659  16 Jun   Day


推荐阅读