팬더에서 그룹당 중앙값을 찾는 방법


다음 기본 구문을 사용하여 팬더에서 그룹당 중앙값을 계산할 수 있습니다.

 df. groupby ([' group_variable '])[' value_variable ']. median (). reset_index ()

다음 구문을 사용하여 여러 열로 그룹화된 중앙값을 계산할 수도 있습니다.

 df. groupby ([' group1 ', ' group2 '])[' value_variable ']. median (). reset_index ()

다음 예에서는 이 구문을 실제로 사용하는 방법을 보여줍니다.

예 1: 그룹별 중앙값 찾기

다음과 같은 pandas DataFrame이 있다고 가정해 보겠습니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' position ': ['G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'],
                   ' points ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
df

	team position points rebounds
0 A G 5 11
1 A G 7 8
2 A F 7 10
3 A F 9 6
4 B G 12 6
5 B G 9 5
6 B F 9 9
7 B F 4 12

다음 코드를 사용하여 팀별로 그룹화된 “포인트” 열의 중앙값을 찾을 수 있습니다.

 #calculate median points by team
df. groupby ([' team '])[' points ']. median (). reset_index ()

	team points
0 to 7.0
1 B 9.0

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

  • A팀 선수들이 득점한 평균 점수는 7점 입니다.
  • B팀 선수들이 득점한 평균 점수는 9점 입니다.

두 변수의 중앙값을 한 번에 찾을 수도 있습니다.

 #calculate median points and median rebounds by team
df. groupby ([' team '])[[' points ', ' rebounds ']]. median ()

	team points rebounds
0 to 7.0 9.0
1B 9.0 7.5

예 2: 여러 그룹의 중앙값 찾기

다음 코드는 팀 및 직위별로 그룹화된 “포인트” 열의 중앙값을 찾는 방법을 보여줍니다.

 #calculate median points by team
df. groupby ([' team ', ' position '])[' points ']. median (). reset_index ()

	team position points
0 A F 8.0
1 A G 6.0
2 B F 6.5
3 B G 10.5

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

  • A팀의 “F” 위치에 있는 선수들이 득점한 평균 점수는 8점 입니다.
  • A팀의 “G” 포지션에 있는 선수들이 득점한 점수의 중앙값은 6 입니다.
  • B팀의 “F” 위치에 있는 선수들이 득점한 중앙값은 6.5 입니다.
  • B팀의 “G” 포지션에 있는 선수들이 득점한 점수의 중앙값은 10.5 입니다.

추가 리소스

다음 튜토리얼에서는 Pandas에서 다른 일반적인 기능을 수행하는 방법을 설명합니다.

Pandas에서 그룹당 최대값을 찾는 방법
팬더에서 그룹당 합계를 찾는 방법
Pandas에서 그룹별로 분위수를 계산하는 방법

의견을 추가하다

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