擅长:python、mysql、java
<p>您可以使用<code>shift()</code>检查<code>a</code>后面是否跟有<code>b</code>和向量化的<code>&</code>,然后用<code>sum</code>来计算真值:</p>
<pre><code>df.groupby('userid').type.apply(lambda x: ((x == "a") & (x.shift(-1) == "b")).sum()).reset_index()
#userid type
#0 20 1
#1 21 2
</code></pre>