如何为 Panda 的日期时间设置缺少的年、月和日

Chr*_*rge 3 python datetime pandas

我有格式的时间戳数据%H:%M:%S:%f。当我阅读它并将其传递到带有 pd.to_datetime 的数据帧中时,除了正确传递的内容之外,它还会自动填写 01/01/1900%H:%M:%S:%f 如何在阅读并传递它时将其设置为特定的年、月、日小时、分钟、秒、毫秒数据?

我正在使用的代码:

import pandas as pd
df = pd.DataFrame({'Time': ["00:00:00:001", "00:00:00:005","00:00:00:009"]})
df['Time'] = pd.to_datetime(df['Time'], format='%H:%M:%S:%f')
print(df)
Run Code Online (Sandbox Code Playgroud)

输出:

                     Time
0 1900-01-01 00:00:00.001
1 1900-01-01 00:00:00.005
2 1900-01-01 00:00:00.009
Run Code Online (Sandbox Code Playgroud)

期望的输出:

一个设定的日期,例如:

                     Time
0 2018-11-21 00:00:00.001
1 2018-11-21 00:00:00.005
2 2018-11-21 00:00:00.009
Run Code Online (Sandbox Code Playgroud)

Sve*_*ris 7

有几种方法可以做到这一点,也许最简单的(至少在我看来)是附加您想要的日期的字符串值,然后转换为日期时间

import pandas as pd
df = pd.DataFrame({'Time': ["00:00:00:001", "00:00:00:005","00:00:00:009"]})
df["Time"] = "2018-11-21 "+ df["Time"]
df['Time'] = pd.to_datetime(df['Time'], format='%Y-%m-%d %H:%M:%S:%f')
print(df)
Run Code Online (Sandbox Code Playgroud)