2017-02-05 8 views
1

Предположим, у меня есть панд DataFrame:Как вычислить значение внутри группы после GroupBy панд

a b c d .... z 
1 10 3 . 
1 20 4 . 
2 30 5 . 
3 40 6 . 
3 50 7 . .... . 

Я хочу, чтобы произвести DataFrame:

a *not sure how to refer to this column?* 
1 (10+20)/(3+4) 
2 30/5 
3 (40+50)/(6+7) 

Как сделать это? Также, как обратиться к созданному столбцу?

Я пробовал df.groupby ('a'), но тогда я не знаю, как писать то, что я хочу в пандах.

ответ

2

попробовать это:

In [216]: df.groupby('a').apply(lambda x: x['b'].sum()/x['c'].sum()) 
Out[216]: 
a 
1 4.285714 
2 6.000000 
3 6.923077 
dtype: float64 
Смежные вопросы