擅长:python、mysql、java
<p>我认为您不需要在这里创建<code>Key</code></p>
<pre><code>df['Time']=df.groupby(['Location','Event']).Date.\
transform(lambda x : (x.iloc[-1]-x.iloc[0]))[~df.duplicated(['Location','Event'],keep='last')]
df
Out[107]:
Location Date Event Key Time
0 i2 2019-03-02 1 a NaT
1 i2 2019-03-02 1 a NaT
2 i2 2019-03-02 1 a NaT
3 i2 2019-03-04 1 a 2 days
4 i2 2019-03-15 2 b 0 days
5 i9 2019-02-22 2 c 0 days
6 i9 2019-03-10 3 d NaT
7 i9 2019-03-10 3 d 0 days
8 s8 2019-04-22 1 e NaT
9 s8 2019-04-25 1 e NaT
10 s8 2019-04-28 1 e 6 days
11 t14 2019-05-13 3 f 0 days
</code></pre>