擅长:python、mysql、java
<p>由于表已按<code>amount</code>列对desc进行排序,因此可以按<a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.core.groupby.GroupBy.head.html" rel="nofollow noreferrer">^{<cd2>}</a>获得每个组的前n行。要进一步将这些前n行的<code>item</code>列分组到列表中,您可以进一步使用<a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.core.groupby.SeriesGroupBy.aggregate.html" rel="nofollow noreferrer">^{<cd4>}</a>,如下所示:</p>
<pre><code>n = 2 # define n
(df.groupby('store_id').head(n)
.groupby('store_id')['item'].agg(list)
).reset_index()
</code></pre>
<p><strong>结果:</strong></p>
<pre><code> store_id item
0 1 [shirt, sock]
1 2 [sock, pants]
</code></pre>