팬더에서 그룹 목격 횟수를 계산하는 방법


종종 Pandas DataFrame에서 그룹당 관찰 수를 계산하는 데 관심이 있을 수 있습니다.

다행히 다음 구문과 함께 groupby()size() 함수를 사용하면 이 작업을 쉽게 수행할 수 있습니다.

 df. groupby (' column_name '). size ()

이 튜토리얼에서는 다음 데이터 프레임을 사용하여 이 기능을 실제로 사용하는 몇 가지 예를 설명합니다.

 import numpy as np
import pandas as pd

#create pandas DataFrame
df = pd. DataFrame ({'team': ['A', 'A', 'B', 'B', 'B', 'C', 'C'],
                   'division':['E', 'W', 'E', 'E', 'W', 'W', 'E'],
                   'rebounds': [11, 8, 7, 6, 6, 5, 12]})

#display DataFrame
print (df)

  team division rebounds
0 AE 11
1 AW 8
2 BE 7
3 BE 6
4 BW 6
5 CW 5
6 CE 12

예시 1: 변수로 계산하기

다음 코드는 팀당 총 관찰 수를 계산하는 방법을 보여줍니다.

 #count total observations by variable 'team'
df. groupby (' team '). size ()

team
At 2
B 3
C 2
dtype: int64

결과에서 우리는 다음을 볼 수 있습니다:

  • A팀에는 2개의 관측치가 있습니다.
  • B팀에는 3개의 관측치가 있습니다.
  • C팀에는 2개의 관측치가 있습니다.

앞의 코드는 시리즈를 생성합니다. 대부분의 경우 DataFrame으로 작업하려고 하므로 대신 에 Reset_index() 함수를 사용하여 DataFrame을 생성할 수 있습니다.

 df. groupby (' team '). size (). reset_index (name=' obs ')

        team obs
0 to 2
1 B 3
2 C 2

예시 2: 변수를 기준으로 계산 및 정렬

sort_values() 함수를 사용하여 그룹 수를 정렬할 수도 있습니다.

그룹 수를 가장 큰 것부터 가장 작은 것까지 정렬하려면 오름차순=False를 지정하고 가장 작은 것부터 가장 큰 것 순으로 정렬하려면 오름차순=True를 지정할 수 있습니다.

 df. groupby (' team '). size (). reset_index (name=' obs '). sort_values ([' obs '], ascending= True )

        team obs
0 to 2
2 C 2
1 B 3

예시 3: 여러 변수로 계산

또한 pandas DataFrame에서 여러 변수로 그룹화된 관찰 수를 계산할 수도 있습니다.

 #count observations grouped by team and division
df. groupby ([' team ',' division ']). size (). reset_index (name=' obs ')

        team division obs
0 A E 1
1 A W 1
2 B E 2
3 B W 1
4 C E 1
5 C W 1

결과에서 우리는 다음을 볼 수 있습니다:

  • 관찰 1개는 팀 A와 디비전 E에 속합니다.
  • 관찰 1개는 팀 A와 디비전 W에 속합니다.
  • 관찰 2개는 팀 B와 디비전 E에 속합니다.
  • 관찰 1개는 팀 B와 디비전 W에 속합니다.
  • 관찰 1개는 팀 C와 디비전 E에 속합니다.
  • 관찰 1개는 팀 C와 디비전 W에 속합니다.

추가 리소스

Pandas에서 열의 합계를 계산하는 방법
Pandas에서 열의 평균을 계산하는 방법
Pandas에서 열의 최대값을 찾는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다