본문 바로가기
데이터분석과 AI/데이터분석과 AI 문법(Python)

pd.describe() 사용법

by 우공80 2023. 8. 16.
728x90

파이썬에서 데이터를 로딩하고 가장 많이 사용하는 함수 중의 하나가 describe 함수입니다.

사용법은 간단한데, descirbe 함수가 범주형에 대해서도 통계정보를 생성해 준다는 것을 모르는 분들이 종종 있어서 정리해 놓습니다.

 

1. 예시 데이터 생성

import pandas as pd

data = {'Age': [25, 30, 22, 40, 28],
        'Height': [170, 160, 175, 162, 180],
        'Weight': [65, 70, 60, 75, 85],
        'Gender': ['Male', 'Female', 'Male', 'Female', 'Male']}

df = pd.DataFrame(data)

2. 수치형 데이터에 대한 통계 생성

print("Numeric Data Summary:")
df.describe()

Output:

각 값에 대한 설명은 다음과 같습니다.

 

  1. count: 열에 있는 null이 아닌 값의 수입니다.
  2. mean: 열의 평균값입니다.
  3. std: 표준 편차입니다.
  4. min: 열의 최솟값입니다.
  5. 25%(25번째 백분위수): 1 사분위수라고도 하는 이 값은 데이터의 하위 25%를 구분하는 값입니다.
  6. 50%(50번째 백분위수 또는 중앙값): 데이터를 정렬할 때 중간 값입니다. 
  7. 75%(75번째 백분위수): 3 사분위수라고도 하는 이 값은 데이터의 상위 25%를 구분하는 값입니다.
  8. max: 열의 최댓값입니다.

 

3. 범주형 데이터에 대한 통계 생성

범주형 데이터에 대해서는 아래와 같인 include='O'(대문자) 옵션을 주면 통계 출력이 가능합니다. 

'O' 대신 'object'를 입력해도 동일한 결과를 얻을 수 있습니다.

print("\nCategorical Data Summary:")
df.describe(include='O')

Output:

  1. count: 열에 있는 null이 아닌 값의 수입니다.
  2. unique: 열에 있는 고유한 고유 값의 수입니다.
  3. top: 열에서 가장 빈도가 높은 값입니다.
  4. freq: 가장 빈도가 높은 값의 빈도(개수)입니다.

 

4. 수치형과 범주형 한 번에 출력

수치형과 범주형 통계를 한 번에 출력하는 것도 가능합니다. include='all' 옵션을 주면 됩니다. 

다만, NaN값이 출력되므로 그다지 예쁘지는 않습니다.

print("\nAll Data Summary:")
df.describe(include='all')

Output:

 

 

 

 

728x90

댓글