我有Pandas Dataframe,如下所示。我要做的是partition (or groupby) by BlockID, LineID, WordID
,然后在每个组中使用current WordStartX - previous (WordStartX + WordWidth)
来导出另一列,例如,WordDistance以指示此单词与上一个单词之间的距离。
这篇文章Row operations within a group of a pandas dataframe非常有用,但就我而言,涉及多个列(WordStartX和WordWidth)。
*BlockID LineID WordID WordStartX WordWidth WordDistance
0 0 0 0 275 150 0
1 0 0 1 431 96 431-(275+150)=6
2 0 0 2 642 90 642-(431+96)=115
3 0 0 3 746 104 746-(642+90)=14
4 1 0 0 273 69 ...
5 1 0 1 352 151 ...
6 1 0 2 510 92
7 1 0 3 647 90
8 1 0 4 752 105**