首页 > 解决方案 > 如何将 timedelta64[ns] 对象 -1 天 +23:40:00 转换为 -20?

问题描述

'2019-07-29 10:00:00' - '2019-07-29 10:20:00' = -1 天 +23:40:00

我想要一分钟。

diff = pd.to_datetime(pd.Series(['2019-07-29 10:00:00', '2019-07-30 10:30:00'])) - pd.to_datetime(pd.Series(['2019-07-29 10:20:00', '2019-07-30 10:15:00']))
print(diff)
print(diff.dt.components)

0   -1 days +23:40:00
1            00:15:00
dtype: timedelta64[ns]
   days  hours  minutes  seconds  milliseconds  microseconds  nanoseconds
0    -1     23       40        0             0             0            0
1     0      0       15        0             0             0            0

我想这样隐蔽,

print(diff)
0   -20
1    15

标签: pythonpandasdatetime

解决方案


尝试这个:

df = pd.DataFrame(diff.dt.components)
df['new'] = df['minutes'] + 60 * df['hours'] + 1440 * df['days']
print(df['new'])

推荐阅读