2017-01-02 1 views
1

반복들 내가 g의 값을 합산하고이 INT 같은 복제 된 것들을 삭제해야 : 드롭합계 값 i가 데이터 프레임을

a b  c d e f g 
6 2011 1 1 0 0 0 
6 2011 1 1 0 0 0 
6 2011 1 1 0 0 7 
6 2011 1 1 0 0 2 
6 2011 1 1 0 0 0 
7 2012 1 1 0 0 5 
7 2012 1 1 0 0 8 

나도 그 드롭 행 우리는 (df.drop_duplicates을 사용할 수 있습니다)하지만 난 내가 합계 수있는 방법을 알고 중퇴하지 않습니다

a b  c d e f g 

6 2011 1 1 0 0 9 
7 2012 1 1 0 0 13 

답변

3

을 할 수 있습니다 다른 열 및 합계에 그룹 :

df.groupby(list('abcdef'), as_index=False)['g'].sum() 
Out: 
    a  b c d e f g 
0 6 2011 1 1 0 0 9 
1 7 2012 1 1 0 0 13 

list('abcdef')은 짧은 글자로 ['a', 'b', 'c', 'd', 'e', 'f']입니다. 모든 열 이름을 지정하지 않을 경우

, 당신은 Index.difference 사용할 수 있습니다

df.groupby(df.columns.difference(['g']).tolist(), as_index=False).sum() 
Out: 
    a  b c d e f g 
0 6 2011 1 1 0 0 9 
1 7 2012 1 1 0 0 13