如何将字符串year-dayofyear-milliseconds转换为日期时间对象

时间:2019-06-03 11:16:05

标签: python pandas string-to-datetime

在pandas DataFrame中,我的日期时间格式很奇怪,如下所示:

0    201913907050435
1    201913908520126
2    201914004163647
3    201914019315651
4    201914019320917
Name: DATETIME, dtype: object

我所知道的是,年份是年份,然后是年份。我想那之后的数字是以毫秒或纳秒为单位的时间。

我想将类型转换为pandas datetime对象。到目前为止,我有:

pd.to_datetime(df.DATETIME, format='%Y%j%f')

这给了我

0   2019-05-19 00:00:00.070504350
1   2019-05-19 00:00:00.085201260
2   2019-05-20 00:00:00.041636470
3   2019-05-20 00:00:00.193156510
4   2019-05-20 00:00:00.193209170
Name: DATETIME, dtype: datetime64[ns]

问题在于HH:MM:SS始终为0,并且未正确填写。我需要什么日期时间代码而不是%f来表示毫秒(或任何数字)?

在此table中找不到它。

谢谢!

1 个答案:

答案 0 :(得分:1)

### try this
print(pd.to_datetime('201913907050435', format="%Y%j%H%M%S%f"))
##output:
2019-05-19 07:05:04.350000