Pandas 기술 통계

PandasBeginner
지금 연습하기

소개

Pandas 기술 통계학 실습에 오신 것을 환영합니다. 기술 통계학은 데이터 분석의 기본이며, 샘플과 측정값에 대한 간단한 요약을 제공합니다. Python 의 강력한 데이터 조작 라이브러리인 Pandas 를 사용하면 이러한 통계량을 계산하는 것이 간단하고 효율적입니다.

이 실습에서는 다음을 배우게 됩니다.

  • 데이터셋의 평균 (average) 계산하기
  • 중앙값 (median) 찾기
  • 최소값 (minimum) 및 최대값 (maximum) 결정하기
  • 단일 명령어로 통계량 전체 요약 생성하기
  • 범주형 열 (categorical column) 의 고유값 (unique values) 개수 세기

샘플 DataFrame 에서 이러한 작업을 수행하고 WebIDE 에서 Python 코드를 작성하고 실행할 것입니다. 시작해 봅시다!

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 초급 레벨의 실험이며 완료율은 97%입니다.학습자들로부터 100%의 긍정적인 리뷰율을 받았습니다.

mean 메서드를 사용하여 평균 계산

이 단계에서는 Pandas DataFrame 의 숫자 열 평균 (average) 을 계산하는 방법을 배웁니다. 평균은 값의 합을 값의 개수로 나눈 것으로, 중심 경향성 (central tendency) 을 나타내는 가장 일반적인 측정값 중 하나입니다.

Pandas 는 .mean() 메서드를 제공하며, 이 메서드는 Series(DataFrame 의 열) 에서 호출하여 평균을 계산할 수 있습니다.

먼저 WebIDE 왼쪽 파일 탐색기에서 main.py 파일을 엽니다. 샘플 DataFrame 을 생성하는 초기 코드를 볼 수 있습니다.

score 열의 평균을 계산하고 출력하기 위해 다음 코드를 main.py 파일 끝에 추가합니다.

## 'score' 열의 평균 계산
score_mean = df['score'].mean()
print(f"Mean Score: {score_mean}")

이제 스크립트를 실행해 봅시다. WebIDE 에서 터미널을 열고 (Terminal -> New Terminal) 다음 명령을 실행합니다.

python3 main.py

원본 DataFrame, 구분선, 그리고 계산된 평균 점수가 표시될 것입니다.

Original DataFrame:
      name  age  score grade
0    Alice   24     85     B
1      Bob   27     90     A
2  Charlie   22     78     C
3    David   32     95     A
4      Eve   29     88     B

==============================

Mean Score: 87.2

median 메서드로 중앙값 계산

이 단계에서는 숫자 열의 중앙값 (median) 을 계산합니다. 중앙값은 오름차순으로 정렬된 데이터셋의 중간 값입니다. 데이터에 이상치 (outliers) 가 포함된 경우 평균보다 중심 경향성을 나타내는 더 나은 척도가 되는 경우가 많습니다.

Pandas 는 .median() 메서드를 사용하여 이를 쉽게 수행할 수 있습니다.

main.py 파일 편집을 계속합니다. score 열의 중앙값을 계산하고 출력하기 위해 다음 줄을 스크립트 끝에 추가합니다.

## 'score' 열의 중앙값 계산
score_median = df['score'].median()
print(f"Median Score: {score_median}")

파일을 저장하고 터미널에서 스크립트를 다시 실행합니다.

python3 main.py

이제 출력에는 평균과 중앙값 모두 포함됩니다.

Original DataFrame:
      name  age  score grade
0    Alice   24     85     B
1      Bob   27     90     A
2  Charlie   22     78     C
3    David   32     95     A
4      Eve   29     88     B

==============================

Mean Score: 87.2
Median Score: 88.0

최소값 및 최대값 찾기

이 단계에서는 열의 최소값과 최대값을 찾습니다. 이러한 통계는 데이터의 범위와 분포를 이해하는 데 유용합니다. Pandas 는 이 목적을 위해 .min().max() 메서드를 제공합니다.

데이터셋에서 가장 낮고 높은 점수를 찾아봅시다. 다음 코드를 main.py 스크립트 끝에 추가합니다.

## 최소값 및 최대값 점수 찾기
score_min = df['score'].min()
score_max = df['score'].max()
print(f"Minimum Score: {score_min}")
print(f"Maximum Score: {score_max}")

파일을 저장하고 터미널에서 실행합니다.

python3 main.py

이제 출력에는 평균, 중앙값, 최소값 및 최대값 점수가 표시됩니다.

Original DataFrame:
      name  age  score grade
0    Alice   24     85     B
1      Bob   27     90     A
2  Charlie   22     78     C
3    David   32     95     A
4      Eve   29     88     B

==============================

Mean Score: 87.2
Median Score: 88.0
Minimum Score: 78
Maximum Score: 95

describe 로 요약 통계 생성

이 단계에서는 강력한 .describe() 메서드를 사용합니다. 이 단일 메서드는 DataFrame 의 모든 숫자 열에 대한 개수, 평균, 표준 편차, 최소값, 최대값 및 사분위수 값을 포함한 포괄적인 기술 통계 요약을 생성합니다.

이는 데이터에 대한 빠른 개요를 얻는 데 엄청난 시간을 절약해 줍니다. 다음 코드를 main.py 끝에 추가합니다.

## 기술 통계 요약 생성
summary_stats = df.describe()
print("Descriptive Statistics Summary:")
print(summary_stats)

파일을 저장하고 스크립트를 실행합니다.

python3 main.py

agescore 열에 대한 요약 통계가 포함된 잘 형식화된 테이블이 표시됩니다.

... (previous output) ...

Descriptive Statistics Summary:
             age      score
count   5.000000   5.000000
mean   26.800000  87.200000
std     4.024922   6.379655
min    22.000000  78.000000
25%    24.000000  85.000000
50%    27.000000  88.000000
75%    29.000000  90.000000
max    32.000000  95.000000

value_counts 로 고유값 개수 세기

이 단계에서는 열의 고유값 발생 횟수를 세는 방법을 배웁니다. 이는 범주형 데이터에 특히 유용합니다. .value_counts() 메서드는 고유값의 개수를 포함하는 Series 를 반환합니다.

각 등급을 받은 학생 수를 세어 봅시다. 다음 코드를 main.py 끝에 추가합니다.

## 각 등급의 발생 횟수 세기
grade_counts = df['grade'].value_counts()
print("Grade Counts:")
print(grade_counts)

파일을 저장하고 마지막으로 스크립트를 실행합니다.

python3 main.py

최종 출력에는 각 고유 등급에 대한 개수가 포함됩니다.

... (previous output) ...

Grade Counts:
grade
B    2
A    2
C    1
Name: count, dtype: int64

이는 등급 'A'와 'B'가 각각 두 번 나타나고 등급 'C'는 한 번 나타남을 보여줍니다.

요약

실험을 완료하신 것을 축하드립니다! Pandas 라이브러리를 사용하여 기본적인 기술 통계 분석을 성공적으로 수행하는 방법을 배웠습니다.

이 실험에서는 몇 가지 주요 Pandas 메서드를 연습했습니다.

  • .mean(): 평균 계산
  • .median(): 중앙값 찾기
  • .min().max(): 데이터 범위 결정
  • .describe(): 빠르고 포괄적인 통계 요약 얻기
  • .value_counts(): 범주형 열의 고유값 개수 세기

이러한 함수는 모든 데이터 분석가 또는 과학자에게 필수적인 도구이며 탐색적 데이터 분석 (EDA) 의 기초를 형성합니다. 데이터 분석 여정에서 더 능숙해지기 위해 이러한 기술을 계속 연습하십시오.