我有一个相当大的熊猫数据框,它是一个时间序列,每个时间戳都有很多不同的信息(眼动追踪数据)。
部分数据看起来有点像:
In [58]: df
Out[58]:
time event
49 44295 NaN
50 44311 NaN
51 44328 NaN
52 44345 2
53 44361 2
54 44378 2
55 44395 2
56 44411 2
57 44428 3
58 44445 3
59 44461 3
60 44478 3
61 44495 NaN
62 44511 NaN
63 44528 NaN
64 44544 NaN
65 44561 NaN
66 44578 NaN
67 44594 NaN
68 44611 4
69 44628 4
70 44644 4
71 44661 NaN
72 44678 NaN
我想将每个事件的(时间)持续时间计算为给定事件的最大(时间)-最小(时间),例如事件 2:44411-44345 = 66
这个持续时间我想在一个新列中,以便数据最终如下所示:
In [60]: df
Out[60]:
time event duration
49 44295 NaN NaN
50 44311 NaN NaN
51 44328 NaN NaN
52 44345 2 66
53 44361 2 66
54 44378 2 66
55 44395 2 66
56 44411 2 66
57 44428 3 50
58 44445 3 50
59 44461 3 50
60 44478 3 50
61 44495 NaN NaN
62 44511 NaN NaN
63 44528 NaN NaN
64 44544 NaN NaN
65 44561 NaN NaN
66 44578 NaN NaN
67 44594 NaN NaN
68 44611 4 33
69 44628 4 33
70 44644 4 33
71 44661 NaN NaN
72 44678 NaN NaN
我怎样才能做到这一点?