我有一个带有“id”列和“值”列的熊猫数据框。它已经按第一个 id(升序)然后值(降序)排序。我需要的是每个 id 的前 10 个值。
我认为像下面这样的东西会起作用,但它不会:
df.groupby("id", as_index=False).aggregate(lambda (index,rows) : rows.iloc[:10])
我得到的只是一个 id 列表,值列(以及我为问题省略的其他列)不再存在。
任何想法如何完成,而不遍历每一行并将前十行附加到另一个数据结构?
我有一个带有“id”列和“值”列的熊猫数据框。它已经按第一个 id(升序)然后值(降序)排序。我需要的是每个 id 的前 10 个值。
我认为像下面这样的东西会起作用,但它不会:
df.groupby("id", as_index=False).aggregate(lambda (index,rows) : rows.iloc[:10])
我得到的只是一个 id 列表,值列(以及我为问题省略的其他列)不再存在。
任何想法如何完成,而不遍历每一行并将前十行附加到另一个数据结构?