Python ValueError:时间数据';00:01:29:06';与格式不匹配';%d:%H:%M:%S';

Python ValueError:时间数据';00:01:29:06';与格式不匹配';%d:%H:%M:%S';,python,pandas,Python,Pandas,我需要将列中的dataframe duration转换为datetime格式,再转换为anlysis average或max/min,但现在可以工作了,需要一些帮助,谢谢。 错误的原因是%d格式只接受01和31之间的值(因为它代表“月中的一天”)00则无效 我能想到的最佳解决方法(有人可能会建议更好的方法)是使用正则表达式将duration列中包含的字符串转换为有效字符串,如下例所示: df['duration']=pd.to_timedelta(df.duration.str.replace

我需要将列中的dataframe duration转换为datetime格式,再转换为anlysis average或max/min,但现在可以工作了,需要一些帮助,谢谢。


错误的原因是
%d
格式只接受
01
31
之间的值(因为它代表“月中的一天”)<代码>00则无效

我能想到的最佳解决方法(有人可能会建议更好的方法)是使用正则表达式将
duration
列中包含的字符串转换为有效字符串,如下例所示:

df['duration']=pd.to_timedelta(df.duration.str.replace(r“(?P\d+):”,r'\g天,1))

我不知道上述示例的时间复杂度(以防需要转换一个大表)。

如果我没有弄错的话,
%d
(天)应介于
01
31
之间<代码>00与格式不匹配。谢谢,先生,以及如何修复它。我使用了“df['duration']=pd.to_timedelta(df['duration']),但错误显示为“ValueError:expected hh:mm:ss格式”。只是编辑了答案,并提出了解决方法
df['duration'] =pd.to_datetime(df['duration'], format='%d:%H:%M:%S')