我的问题类似于Efficient date range overlap calculation in python?,但是,我需要使用完整的时间戳而不是天来计算重叠,但更重要的是,我不能将特定的日期指定为重叠,而只能指定小时。
import pandas as pd import numpy as np df = pd.DataFrame({'first_ts': {0: np.datetime64('2020-01-25 07:30:25.435000'), 1: np.datetime64('2020-01-25 07:25:00')}, 'last_ts': {0: np.datetime64('2020-01-25 07:30:25.718000'), 1: np.datetime64('2020-01-25 07:25:00')}}) df['start_hour'] = 7 df['start_minute'] = 0 df['end_hour'] = 8 df['end_minute'] = 0 display(df)
如何计算间隔(first_ts,last_ts)与第二个间隔的重叠持续时间(以毫秒为单位?潜在地,我需要每天用小时定义的时间间隔构造一个时间戳,然后计算重叠。
我的问题类似于python中的有效日期范围重叠计算?,但是,我需要使用完整的时间戳而不是天来计算重叠,但更重要的是,我无法指定...
numpy.minimum
和numpy.minimum
,减去,将时间增量转换为numpy.maximum
,然后将其乘以numpy.maximum
: