반응형
팬더 그룹 및 합계
이 데이터 프레임을 사용하고 있습니다 :
Fruit Date Name Number
Apples 10/6/2016 Bob 7
Apples 10/6/2016 Bob 8
Apples 10/6/2016 Mike 9
Apples 10/7/2016 Steve 10
Apples 10/7/2016 Bob 1
Oranges 10/7/2016 Bob 2
Oranges 10/6/2016 Tom 15
Oranges 10/6/2016 Mike 57
Oranges 10/6/2016 Bob 65
Oranges 10/7/2016 Tony 1
Grapes 10/7/2016 Bob 1
Grapes 10/7/2016 Tom 87
Grapes 10/7/2016 Bob 22
Grapes 10/7/2016 Bob 12
Grapes 10/7/2016 Tony 15
이름별로 과일을 집계하여 과일별로 총 과일 수를 얻으려고합니다.
Bob,Apples,16 ( for example )
나는 이름과 과일로 그룹화를 시도했지만 어떻게 총 과일 수를 얻습니까?
sum()
방법을 사용하십시오
df.groupby(['Fruit','Name']).sum()
Out[31]:
Number
Fruit Name
Apples Bob 16
Mike 9
Steve 10
Grapes Bob 35
Tom 87
Tony 15
Oranges Bob 67
Mike 57
Tom 15
Tony 1
또한 agg 기능을 사용할 수 있습니다.
df.groupby(['Name', 'Fruit'])['Number'].agg('sum')
원래 열을 유지하려면 Fruit
및 Name
을 사용하십시오 reset_index()
. 그렇지 않으면 Fruit
및 Name
인덱스의 일부가 될 것입니다.
df.groupby(['Fruit','Name'])['Number'].sum().reset_index()
Fruit Name Number
Apples Bob 16
Apples Mike 9
Apples Steve 10
Grapes Bob 35
Grapes Tom 87
Grapes Tony 15
Oranges Bob 67
Oranges Mike 57
Oranges Tom 15
Oranges Tony 1
다른 답변에서 볼 수 있듯이 :
df.groupby(['Fruit','Name'])['Number'].sum()
Number
Fruit Name
Apples Bob 16
Mike 9
Steve 10
Grapes Bob 35
Tom 87
Tony 15
Oranges Bob 67
Mike 57
Tom 15
Tony 1
다른 답변 모두 원하는 것을 달성합니다.
이 pivot
기능을 사용하여 멋진 테이블에 데이터를 정렬 할 수 있습니다
df.groupby(['Fruit','Name'],as_index = False).sum().pivot('Fruit','Name').fillna(0)
Name Bob Mike Steve Tom Tony
Fruit
Apples 16.0 9.0 10.0 0.0 0.0
Grapes 35.0 0.0 0.0 87.0 15.0
Oranges 67.0 57.0 0.0 15.0 1.0
df.groupby(['Fruit','Name'])['Number'].sum()
다른 열을 선택하여 숫자를 합할 수 있습니다.
당신은 설정할 수 있습니다 groupby
에 열을 index
다음 사용 sum
하여level
df.set_index(['Fruit','Name']).sum(level=[0,1])
Out[175]:
Number
Fruit Name
Apples Bob 16
Mike 9
Steve 10
Oranges Bob 67
Tom 15
Mike 57
Tony 1
Grapes Bob 35
Tom 87
Tony 15
참고 URL : https://stackoverflow.com/questions/39922986/pandas-group-by-and-sum
반응형
'Programming' 카테고리의 다른 글
사전에서 하나의 키에 여러 값을 추가합니다 (0) | 2020.07.05 |
---|---|
.NET을 사용하여 두 파일을 빠르게 비교하는 방법은 무엇입니까? (0) | 2020.07.05 |
한 번의 마우스 클릭으로 모든 DIV 텍스트 선택 (0) | 2020.07.05 |
문자열을 줄로 나누는 가장 좋은 방법 (0) | 2020.07.05 |
Django 템플릿 내에서 컬렉션의 크기를 어떻게 확인할 수 있습니까? (0) | 2020.07.05 |