2014-08-27 37 views
6

Başlangıç ​​sorusu. Bu basit bir işlem olmalı gibi görünüyor, ama dokümanlar okumadan bunu anlayamıyorum.Pandalar grubu iki sütun toplamı ve toplamı

bu yapıyla bir df vardır:

|integer_id|int_field_1|int_field_2| 

integer_id sütun benzersiz olmayan, bu yüzden gruba integer_id tarafından df gibi ve iki alan toplamı olur.

eşdeğer SQL geçerli: Bunu yapmanın en kolay yolu üzerinde

SELECT integer_id, SUM(int_field_1), SUM(int_field_2) FROM tbl 
GROUP BY integer_id 

herhangi bir öneriniz?

DÜZENLEME:. Dahil giriş/çıkış ('integer_id') df.groupby kullanılarak

Input: 
integer_id int_field_1 int_field_2 
2656  36   36 
2656  36   36 
9702  2   2 
9702  1   1 

Çıkışı toplamı(): Sadece bir groupby nesne üzerinde sum çağırmanız gerekir

integer_id int_field_1 int_field_2 
2656  72   72 
9702  3   3 
+0

'('integer_id') df.groupby yapar yapabilirsiniz. Sum()' vermek istediğini? – EdChum

+1

Ah evet çoğunlukla işe yarıyor gibi görünüyor. Çıkışın ilk satırı, anlamadığım iki boş alanla birlikte 'integer_id' içerir. – acpigeon

+0

Bu, muhtemelen, tamsayı_dizisi dizin olarak ayarlandığından veri çerçevesinin sadece bir temsilidir. – joris

cevap

10

:

df.groupby('integer_id').sum() 

daha başka örnekleri için docs bakınız

+1

downvoter açıklamak için bakım? – EdChum

1

Bunu

data.groupby(by=['account_ID'])['purchases'].sum()