Python %H:%M:%S.%f格式在我的数据帧中不一致

Python %H:%M:%S.%f格式在我的数据帧中不一致,python,pandas,dataframe,datetime,time,Python,Pandas,Dataframe,Datetime,Time,我有以下代码: y_df['TimeFormat']=pd.to_datetime(x_df['Time'],格式='%H:%M:%S.%f')) 但问题是x_df['Time']的格式并不总是%H:%M:%S.%f。这意味着它的格式有时是%H:%M:%S。我可以轻松地删除该格式并让python完成它的工作。然而,这将显著增加计算时间。我想知道是否有一种方法可以将x_df['Time']的所有实例自动转换为上述格式。尝试使用它可以从不同的字符串自动创建datetime对象: from dateu

我有以下代码:
y_df['TimeFormat']=pd.to_datetime(x_df['Time'],格式='%H:%M:%S.%f'))
但问题是x_df['Time']的格式并不总是%H:%M:%S.%f。这意味着它的格式有时是%H:%M:%S。我可以轻松地删除该格式并让python完成它的工作。然而,这将显著增加计算时间。我想知道是否有一种方法可以将x_df['Time']的所有实例自动转换为上述格式。

尝试使用它可以从不同的字符串自动创建datetime对象:

from dateutil.parser import parse 

parse('12:03:24')                                                                                                                                                                                 
# datetime.datetime(2019, 12, 8, 12, 3, 24)

parse('12:03:24.0003')                                                                                                                                                                            
# datetime.datetime(2019, 12, 8, 12, 3, 24, 300)
您可以将datetime时间戳转换为时间戳:

pd.Timestamp(datetime.datetime(2019, 12, 8, 12, 3, 24, 300))                                                                                                                                      
# Timestamp('2019-12-08 12:03:24.000300')

在本文中,向下滚动到“dateutil”,它会自动解析日期,这可能有助于:
pd.Timestamp(parse('12:03:24'))
# Timestamp('2019-12-08 12:03:24')

pd.Timestamp(parse('12:03:24.3333'))
#  Timestamp('2019-12-08 12:03:24.333300')