我想将以下int系列转换为timedelta。我希望结果是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]
答案 0 :(得分:1)
尝试一下。
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]