擅长:python、mysql、java
<p>如果您想使用现有的值,我想您可以使用<code>pd.cut</code>和groupby max,如下所示</p>
<pre><code>bins = [0, 0.5, 0.6, 0.7, 0.8, 0.99]
labels = ['top50', 'top40', 'top30', 'top20', 'top10']
s = pd.cut(df.percentile_rank, bins=bins, labels=labels, right=True)
df_out = df.groupby(['type', s]).value.max().unstack()
Out[57]:
percentile_rank top50 top40 top30 top20 top10
type
a 61 63 67 78 89
b 64 66 72 74 80
</code></pre>