在我的应用程序中,时间以这种方式存储:
05-04-2017_12:28:26.758369
所以我写道:
df[timestamp_lbl] = pd.to_datetime(df[timestamp_lbl],
format="%d-%m-%Y_%H:%M:%S.%f")
当我打印df [timestamp_lbl]时,我得到:
05-04-2017 12:28:26.758369
现在缺少下划线。我究竟做错了什么?谢谢!
注意:我需要列具有datetime64而不是字符串。
答案 0 :(得分:1)
format
参数仅告诉to_datetime
在解析日期字符串时期望的语法类型。但是一旦它被转换为Pandas Datetime对象,它的打印表示总是相同的。如果您需要在某个时刻打印出其值,可以使用.strftime()
方法而不更改其dtype
:
ts = "05-04-2017_12:28:26.758369"
tsobj = pd.to_datetime(ts,format="%d-%m-%Y_%H:%M:%S.%f")
print(tsobj.strftime("%d-%m-%Y_%H:%M:%S.%f"))
'05-04-2017_12:28:26.758369'