擅长:python、mysql、java
<p>您可以使用<code>shift</code>和<code>where</code>检查characterId是否已重新启动。你知道吗</p>
<pre><code> df['nextResult'] = df.shift(1)['matchResult'].where(df.characterid.diff().fillna(0).ge(0))
</code></pre>
<p>输出:</p>
<pre><code> characterid date kills deaths matchResult nextResult
0 200 3-5-2014-22:30:10 10 12 0 NaN
1 300 4-4-2014-23:30:10 10 13 1 0.0
2 400 1-2-2014-17:30:10 9 10 1 1.0
3 201 3-5-2014-22:20:05 11 16 0 NaN
4 301 1-4-2014-20:20:05 18 15 1 0.0
</code></pre>
<hr/>
<pre><code>df['nextResult'] = df.shift(1)['matchResult'].where(df.characterid.gt(df.shift(1).fillna('').characterid.astype(str)))
</code></pre>