파이썬은 데이터 분석 및 통계 작업을 위한 강력한 도구로, pandas와 matplotlib는 이를 위한 핵심 라이브러리입니다. pandas는 데이터 처리 및 분석에 유용하고, matplotlib는 데이터를 시각화하는 데 유용합니다. 이 글에서는 파이썬을 사용한 통계 기초 분석 방법을 pandas와 matplotlib를 중심으로 살펴보겠습니다.
1. pandas 기본 사용법
pandas는 파이썬에서 데이터를 쉽게 다루고 분석할 수 있게 도와주는 라이브러리입니다. pandas의 핵심 데이터 구조인 Series와 DataFrame을 사용하면, 데이터를 직관적으로 처리할 수 있습니다.
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은 데이터를 시각적으로 표현하는 데 유용합니다. 이 두 라이브러리를 활용하여 통계 분석과 시각화를 동시에 할 수 있어, 데이터의 인사이트를 얻는 데 매우 유용한 도구들입니다.
'학습정보' 카테고리의 다른 글
회귀분석 알아보기 : 정의, 종류, 해석 (0) | 2025.01.25 |
---|---|
데이터 분석을 위한 R의 활용법: 통계적 가설 검정 쉽게 하기 (0) | 2025.01.18 |
엑셀로 통계 분석하기: 기본 기능에서 고급 분석까지 (0) | 2025.01.18 |
데이터 시각화를 위한 도구 추천: Python vs R 비교 (0) | 2025.01.18 |
추천 시스템의 동작 원리: 협업 필터링과 콘텐츠 기반 방법 (0) | 2025.01.18 |