擅长:python、mysql、java
<p>您可以尝试以下方法:</p>
<pre><code>df.groupby(['CODE', df['PRCP'].ne(df['PRCP'].shift()).cumsum()]).size().max()
</code></pre>
<p><code>groupby</code>乘以<code>CODE</code>和连续的零,然后计算大小</p>
<p>您的分组结果(aggr->;大小)将是:</p>
<pre><code>CODE PRCP
AE000041196 1 5
2 1
3 2
4 1
</code></pre>
<p>现在你可以找到max和min</p>
<p>因此,您的<strong>最终解决方案将如下所示:</p>
<pre><code>df1 = df.fillna(0)
df1.groupby(['CODE', df1['TMAX'].ne(df1['TMAX'].shift()).cumsum()]).size().max()
</code></pre>
<hr/>
<pre><code>9
</code></pre>