Pandas: 그룹별로 explain()을 사용하는 방법


explain() 함수를 사용하여 Pandas DataFrame의 변수에 대한 설명 통계를 생성할 수 있습니다.

다음 기본 구문을 사용하여 Pandas의 groupby () 함수와 함께 explain () 함수를 사용할 수 있습니다.

 df. groupby (' group_var ')[' values_var ']. describe ()

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

예: Pandas에서 그룹별로 explain() 사용

서로 다른 두 팀의 농구 선수에 대한 정보가 포함된 다음과 같은 pandas DataFrame이 있다고 가정합니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' points ': [8, 12, 14, 14, 15, 22, 27, 24],
                   ' assists ':[2, 2, 3, 5, 7, 6, 8, 12]})

#view DataFrame
print (df)

  team points assists
0 to 8 2
1 to 12 2
2 to 14 3
3 to 14 5
4 B 15 7
5 B 22 6
6 B 27 8
7 B 24 12

설명() 함수를 groupby() 함수와 함께 사용하여 각 포인트 열 값을 요약할 수 있습니다.

 #summarize points by team
df. groupby (' team ')[' points ']. describe ()

count mean std min 25% 50% 75% max
team								
A 4.0 12.0 2.828427 8.0 11.00 13.0 14.00 14.0
B 4.0 22.0 5.099020 15.0 20.25 23.0 24.75 27.0

결과에서 각 팀의 포인트 변수에 대해 다음 값을 볼 수 있습니다.

  • 개수 (관측치 수)
  • 평균 (평균 점수 값)
  • std (점값의 표준편차)
  • min (최소 포인트 값)
  • 25 %(포인트의 25번째 백분위수)
  • 50 %(포인트의 50번째 백분위수(즉, 중앙값))
  • 75 %(포인트의 75번째 백분위수)
  • max (최대 포인트 값)

결과를 DataFrame 형식으로 표시하려면 Reset_index() 인수를 사용하면 됩니다.

 #summarize points by team
df. groupby (' team ')[' points ']. describe (). reset_index ()

        team count mean std min 25% 50% 75% max
0 A 4.0 12.0 2.828427 8.0 11.00 13.0 14.00 14.0
1 B 4.0 22.0 5.099020 15.0 20.25 23.0 24.75 27.0

변수는 이제 DataFrame의 열이고 인덱스 값은 0과 1입니다.

추가 리소스

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

Pandas: 그룹당 누적 합계를 계산하는 방법
Pandas: 그룹별로 고유한 값을 계산하는 방법
Pandas: 그룹별 상관관계를 계산하는 방법

의견을 추가하다

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