2016-04-03 108 views
4

我知道後品嚐每組這一定已經回答了一些在那裏,但我無法找到它熊貓:GROUPBY

問題:GROUPBY操作之後品嚐每一組

import pandas as pd 

df = pd.DataFrame({'a': [1,2,3,4,5,6,7], 
        'b': [1,1,1,0,0,0,0]}) 

grouped = df.groupby('b') 

# now sample from each group, e.g., I want 30% of each group 

回答

7

應用拉姆達並撥打sample與參數frac

In [2]: 
df = pd.DataFrame({'a': [1,2,3,4,5,6,7], 
        'b': [1,1,1,0,0,0,0]}) 
​ 
grouped = df.groupby('b') 
grouped.apply(lambda x: x.sample(frac=0.3)) 

Out[2]: 
    a b 
b   
0 6 7 0 
1 2 3 1 
+0

糟糕,只是想通了。無論如何感謝您的時間。 – gongzhitaao

+0

順便說一句,如何獲得指數的一部分? – gongzhitaao

+0

你是什麼意思?如上所示, – EdChum