학습정보

파이썬을 활용한 통계 기초 분석: pandas와 matplotlib 사용법

MPH 2025. 1. 18. 08:05
728x90
반응형

파이썬은 데이터 분석 및 통계 작업을 위한 강력한 도구로, pandas와 matplotlib는 이를 위한 핵심 라이브러리입니다. pandas는 데이터 처리 및 분석에 유용하고, matplotlib는 데이터를 시각화하는 데 유용합니다. 이 글에서는 파이썬을 사용한 통계 기초 분석 방법을 pandas와 matplotlib를 중심으로 살펴보겠습니다.


1. pandas 기본 사용법

pandas는 파이썬에서 데이터를 쉽게 다루고 분석할 수 있게 도와주는 라이브러리입니다. pandas의 핵심 데이터 구조인 SeriesDataFrame을 사용하면, 데이터를 직관적으로 처리할 수 있습니다.

1.1. pandas 설치

pip install pandas

1.2. pandas 데이터 구조

  • Series: 1차원 배열로, 값과 인덱스를 가지며 간단한 데이터 구조입니다.
  • DataFrame: 2차원 테이블 형태로, 행(row)과 열(column)로 구성되어 있으며, 엑셀 시트처럼 데이터를 다룰 수 있습니다.
import pandas as pd

# DataFrame 예시
data = {
    '이름': ['홍길동', '이순신', '김유신'],
    '나이': [25, 32, 28],
    '성별': ['남', '남', '남']
}

df = pd.DataFrame(data)
print(df)

1.3. 기본 통계 함수

pandas는 데이터의 요약 통계량을 쉽게 계산할 수 있습니다. 주요 함수들은 다음과 같습니다.

  • 평균: df.mean()
  • 중앙값: df.median()
  • 최소값/최대값: df.min(), df.max()
  • 표준편차: df.std()
  • 분산: df.var()
  • 상관계수: df.corr()
import pandas as pd

# 예시 데이터
data = {
    'Height': [150, 160, 170, 180, 175],
    'Weight': [50, 60, 65, 80, 70]
}

df = pd.DataFrame(data)

# 평균 구하기
print(df.mean())

# 상관계수 구하기
print(df.corr())

이 함수들은 데이터의 중심 경향성과 분포를 빠르게 이해할 수 있게 도와줍니다.


2. matplotlib을 활용한 데이터 시각화

matplotlib는 파이썬에서 데이터를 시각적으로 표현하는 데 사용되는 라이브러리입니다. 기본적인 그래프부터 고급 시각화까지 다양한 형태의 그래프를 그릴 수 있습니다.

2.1. matplotlib 설치

pip install matplotlib

2.2. matplotlib의 기본 그래프 그리기

import matplotlib.pyplot as plt

# 예시 데이터
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]

# 선 그래프 그리기
plt.plot(x, y)
plt.title("Line Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

이 코드는 기본적인 선 그래프를 그리는 예시입니다. plt.plot()은 데이터를 선으로 연결하여 시각화합니다.

2.3. 히스토그램

히스토그램은 데이터의 분포를 시각적으로 나타내는 유용한 방법입니다. matplotlib을 사용하여 히스토그램을 그리는 방법은 다음과 같습니다.

import matplotlib.pyplot as plt
import numpy as np

# 예시 데이터
data = np.random.randn(1000)

# 히스토그램 그리기
plt.hist(data, bins=30, edgecolor='black')
plt.title("Histogram")
plt.xlabel("Values")
plt.ylabel("Frequency")
plt.show()

이 코드는 정규 분포를 따른 1000개의 무작위 데이터를 생성하고, 히스토그램을 그립니다.

2.4. 산점도 (Scatter Plot)

산점도는 두 변수 간의 관계를 시각화하는 데 사용됩니다. matplotlib을 이용하여 산점도를 그리는 방법은 다음과 같습니다.

import matplotlib.pyplot as plt

# 예시 데이터
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]

# 산점도 그리기
plt.scatter(x, y)
plt.title("Scatter Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

산점도는 변수 간의 상관 관계를 직관적으로 시각화할 수 있습니다.


3. pandas와 matplotlib을 활용한 통계 분석 예시

이제 pandas와 matplotlib을 활용하여 간단한 데이터 분석을 해보겠습니다. 예를 들어, 학생들의 수학 성적 데이터를 이용하여 통계 분석을 수행하고, 그 결과를 시각화할 수 있습니다.

import pandas as pd
import matplotlib.pyplot as plt

# 데이터 준비
data = {
    'Student': ['John', 'Alice', 'Bob', 'David', 'Eva'],
    'Math Score': [88, 92, 79, 85, 91]
}

df = pd.DataFrame(data)

# 기본 통계량 출력
print(df['Math Score'].describe())

# 히스토그램으로 성적 분포 시각화
plt.hist(df['Math Score'], bins=5, edgecolor='black')
plt.title("Math Scores Distribution")
plt.xlabel("Scores")
plt.ylabel("Frequency")
plt.show()

이 코드는 학생들의 수학 성적 데이터를 가지고 기본적인 통계량을 출력하고, 그 분포를 히스토그램으로 시각화합니다.


4. 결론

pandas와 matplotlib을 사용하면 파이썬에서 통계 분석을 쉽고 효율적으로 수행할 수 있습니다. pandas는 데이터를 다루는 데 강력한 기능을 제공하며, matplotlib은 데이터를 시각적으로 표현하는 데 유용합니다. 이 두 라이브러리를 활용하여 통계 분석과 시각화를 동시에 할 수 있어, 데이터의 인사이트를 얻는 데 매우 유용한 도구들입니다.

728x90
반응형