将XX-HH:MM:SS转换为timedelta

时间:2019-02-01 01:31:46

标签: python

我有一个柱,用值看起来像这样:

99920387    40-11:23:15
99920388          00:00
99920389          00:00
99920390          00:00
99920391          00:00
99920392    31-20:29:07
99920393       20:17:05
99920394       20:17:05
99920395    28-10:09:59
99920396    28-10:09:59
99920397          44:16
99920398          29:08
99920399          29:05
99920400          20:44

我想将它们转换为timedelta格式,但是当我执行pd.to_timedelta(df['ELAPSED']时,出现 ValueError:预期的hh:mm:ss格式

更新: 当我阅读前100列时,由于前100列采用相同的格式,因此我可以使用pd.to_timedelta(df['ELAPSED']对其进行成功转换:

0     79-10:14:49
1     79-10:14:49
2     79-10:14:49
3     79-10:14:49
4     79-10:14:49
5     79-10:14:49
6     79-10:14:49
7     79-10:14:49

这是它工作时的样子(对于前100行):

0    -330 days +09:45:11
1    -330 days +09:45:11
2    -330 days +09:45:11
3    -330 days +09:45:11
4    -330 days +09:45:11
5    -330 days +09:45:11
6    -330 days +09:45:11
7    -330 days +09:45:11

但是,当我读取其余数据并且格式范围从XX-HH:MM:SS到MM:SS时,它会中断。我的问题是:1)什么是处理这种不一致格式的数据的一个很好的解决方案? 2)如何将 79-10:14:49 转换为 -330天+09:45:11

谢谢!

0 个答案:

没有答案