从Pandas Dataframe 中的字符串列转换为时间h:mm:ss

snz8szmq  于 2022-09-21  发布在  其他
关注(0)|答案(1)|浏览(92)

我的 Dataframe 中有一列的值如下:00:23:44如何将其从字符串转换为时间h:mm:ss?

oyxsuwqo

oyxsuwqo1#

使用to_datetimeerrors='coerce'将类似日期时间的值转换为具有Series.dt.time的缺失值,但后面的处理有问题:

df['time'] = pd.to_datetime(df['col'], errors='coerce').dt.time

如果以后需要处理值,请使用to_timedelta

df['time'] = pd.to_timedelta(df['col'], errors='coerce')

示例

df = pd.DataFrame({'col':['00:23:44','00:23:47','###']})

df['time'] = pd.to_datetime(df['col'], errors='coerce').dt.time
df['timedelta'] = pd.to_timedelta(df['col'], errors='coerce')
print (df)
        col      time       timedelta
0  00:23:44  00:23:44 0 days 00:23:44
1  00:23:47  00:23:47 0 days 00:23:47
2       ###       NaT             NaT

相关问题