我在pandas数据框中有一列以日期形式表示的字符串
Year-day hour:minute:second.microsecond
除了将日期写为0-364之间的单个数字外。例如,日期2019-040 04:00:00:000000
表示2019年2月9日凌晨4点。如何将这些值转换为日期时间实例?
答案 0 :(得分:2)
您可以使用datetime
和strptime
来实现。 %j
directive允许您输入年份的零填充天数:
import datetime as dt
date_time = '2019-040 04:00:00:000000'
dt.datetime.strptime(date_time, '%Y-%j %H:%M:%S:%f')
输出:
datetime.datetime(2019, 2, 9, 4, 0)
答案 1 :(得分:0)
您真正要问的是,一年中哪几天的指令用0填充。它是“%j”。
因此,在这种情况下,您将对年份执行%Y,对日期进行%j,对小时进行%H,对分钟进行%M,对秒进行%S,对微秒进行%f。
pd.to_datetime(column, format='%Y-%j %H:%M:%S:%f')