我有一个带有 4 位 int 列的数据框:
df['time'].head(10)
0 1844
1 2151
2 1341
3 2252
4 2252
5 1216
6 2334
7 2247
8 2237
9 1651
Name: DepTime, dtype: int64
我已验证 max 为 2400,min 为 1。我想将其转换为带有小时和分钟的日期时间列。我该怎么做?
如果这些是 4 位数字,timedelta
则比 更合适datetime
:
pd.to_timedelta(df['time']//100 * 60 + df['time'] % 100, unit='m')
输出:
0 18:44:00
1 21:51:00
2 13:41:00
3 22:52:00
4 22:52:00
5 12:16:00
6 23:34:00
7 22:47:00
8 22:37:00
9 16:51:00
Name: time, dtype: timedelta64[ns]
如果您有另一列date
,您可能需要合并date
并time
创建一datetime
列。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句