我有一些事件,这些事件的开始时间和结束时间都是堆积在一起的。目的是计算每个事件的总持续时间。由于每个事件中的任务时间重叠,大数据透视表会产生错误的结果
例如,事件的持续时间应为
event 1 10:16:08
event 2 9:07:48
event 3 6:08:46
当我将pivot与pandas一起使用时,由于事件任务的堆栈性质,显然会得到错误结果
pd.pivot_table(df, values = 'Duration', index=['event'],aggfunc=np.sum).reset_index().sort_values('Duration').tail(10)
请向我指出如何解决此问题的正确方向。我可以通过遍历每个事件的开始日期和结束日期来解决此问题,但这将是冗长且不必要的
因此,举一个简单的例子:事件1中的2个任务(上午8点至上午10点,上午9点至上午11点)应通过简单的持续时间求和给出3小时而不是4小时的结果