擅长:python、mysql、java
<p>你的错误正确地表明你不能检查序列的真实性。但是自定义匿名函数对于这个任务不是必需的。在</p>
<p>将<code>groupby</code>+<code>transform</code>与<code>pd.Series.diff</code>一起使用:</p>
<pre><code>import pandas as pd
df = pd.DataFrame({'AccountID': [1,1,1,1,2,2,2,2,2],
'RefMonth': [1,2,3,4,1,2,3,4,5],
'OpenBal': [100,101,101,103,200,201,202,203,204]})
df['A'] = (df.groupby('AccountID')['OpenBal'].transform(pd.Series.diff)==0).astype(int)
print(df)
AccountID OpenBal RefMonth A
0 1 100 1 0
1 1 101 2 0
2 1 101 3 1
3 1 103 4 0
4 2 200 1 0
5 2 201 2 0
6 2 202 3 0
7 2 203 4 0
8 2 204 5 0
</code></pre>
<hr/>
<p>如果每个组的第一行需要<code>NaN</code>:</p>
^{pr2}$