我的问题类似于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)
如何计算间隔(第一次、最后一次)与第二次间隔的重叠持续时间(毫秒)? 我可能需要在每天构建一个时间戳,时间间隔由小时定义,然后计算重叠
想法是为开始和结束日期时间创建一个新的系列,使用dates by datetimes列,使用^{} 和^{} ,减法,将时间增量转换为^{} ,并将其乘以
1000
:另一个想法是只使用
np.minumum
:相关问题 更多 >
编程相关推荐