擅长:python、mysql、java
<p>如果所有对和列都已排序,请使用:</p>
<pre><code>df = df.sort_values(['Game_ID','play_homevisitor'])
m1 = df['play_homevisitor'] == 0
m2 = df['play_homevisitor'] == 1
s1 = df.loc[m1, 'Runs_scored'].values
s2 = df.loc[m2, 'Runs_scored'].values
df.loc[m2, 'Runs_allowed'], df.loc[m1, 'Runs_allowed'] = s1, s2
print (df)
Game_ID hometeam visteam play_homevisitor Runs_scored Runs_allowed
0 ATL199204090 ATL SFN 0 13 6.0
1 ATL199204090 ATL SFN 1 6 13.0
2 ATL199204100 ATL SFN 0 3 6.0
3 ATL199204100 ATL SFN 1 6 3.0
4 ATL199204110 ATL SFN 0 4 0.0
5 ATL199204110 ATL SFN 1 0 4.0
</code></pre>