首页 > 解决方案 > 两列之间的日期时间差,不计算完整的 24 小时

问题描述

这里有两个对 python 中的日期时间比较非常有用的问题:

以小时和分钟计算两列之间的 Pandas DataFrame 时间差

确定两个 DateTime 之间的差异,仅计算营业时间

我在 python 中有一个包含两列的数据框:

A                      B
10:00:00 01.01.2019    12:00:00 02.01.2019

而且我有开放时间(这是相关时间),这应该只计算在内,所以不是完整的 24 小时,也可能不是每天。所以我的营业时间是:每天 10:00:00 - 18:00:00,我该如何调整:

df_time['td'] = df_time['B']-df_time['A']  

在这种情况下,结果将是 10 小时?它从周一到周五开放。

标签: pythonpandas

解决方案


不是一个完整的答案,但我会这样做:

  1. 计算第一天的时间18:00:00 - df['A'].dt.time
  2. 计算最后一天的时间 df['B'] - 10:00:00
  3. 计算中间的天数并乘以 8。

推荐阅读