为什么pd.to_timedelta在提供INT系列时会失败



我想将以下int系列转换为序列。我希望结果是16H30S00,但这是其他的。

将我的数据框架转换为16H30S00我该怎么办?

a = pd.DataFrame({'b':[163000,163000]})
pd.to_timedelta(a.b,'S')
Out[87]: 
0   1 days 21:16:40
1   1 days 21:16:40
Name: b, dtype: timedelta64[ns]

尝试这个。

a = pd.DataFrame({'b':[163000,163000]})
k=pd.to_datetime(a.b,format='%H%S%f')
k=k.dt.strftime('%H:%M:%S.%f')
print(pd.to_timedelta(k,unit='S'))

输出:

0   16:00:30
1   16:00:30
Name: b, dtype: timedelta64[ns]

最新更新