2015-10-16 44 views
1

我有一個'id'列'值'的熊貓數據框。它已經按第一個id(升序)和value(降序)排序。我需要的是每個ID的前10個值。熊貓:獲得前10個值後編組

我以爲,像下面這樣的工作,但它並不:

df.groupby("id", as_index=False).aggregate(lambda (index,rows) : rows.iloc[:10]) 

我得到的只是是IDS,值列(和其他列的列表,我省略了這個問題)不在那裏了。

任何想法如何完成,無需迭代每一行,並將前十個附加到另一個數據結構?

+0

您應該在問題中給出示例數據框。 –

回答

2

這是你在找什麼?

df.groupby('id').head(10) 
+0

這正是我想要的,謝謝。 – SGer