pandas
Pandas를 활용한 데이터 분석 및 시각화
난개발자
2025. 1. 30. 22:31
728x90
데이터를 정리한 후에는 이를 분석하고 시각화하는 과정이 필요합니다.
Pandas는 기본적인 데이터 분석 기능을 제공하며, Matplotlib 및 Seaborn 라이브러리와 함께 사용하면 강력한 시각화를 수행할 수 있습니다.
1. 데이터 분석 기초
(1) 기본 정보 확인
import pandas as pd
# 예제 데이터 생성
data = {'이름': ['홍길동', '이순신', '강감찬', '김유신', '유관순'],
'나이': [25, 35, 45, 40, 22],
'도시': ['서울', '부산', '대구', '광주', '서울'],
'연봉': [5000, 7000, 8000, 7500, 5500]}
df = pd.DataFrame(data)
# 데이터 기본 정보 확인
print(df.info()) # 데이터 타입, 결측값 확인
print(df.describe()) # 숫자형 데이터의 기초 통계
describe() 메서드는 평균, 표준편차, 최소값, 최대값 등을 확인하는 데 유용합니다.
(2) 특정 열의 분석
print(df['도시'].value_counts()) # 도시별 데이터 개수 확인
print(df['연봉'].mean()) # 평균 연봉 계산
(3) 그룹별 분석
grouped = df.groupby('도시')['연봉'].mean() # 도시별 평균 연봉 계산
print(grouped)
2. 데이터 시각화
Pandas는 기본적인 그래프 기능을 제공하며, Matplotlib 및 Seaborn과 함께 사용하면 더욱 강력한 시각화를 수행할 수 있습니다.
(1) 라이브러리 설치 및 불러오기
import matplotlib.pyplot as plt
import seaborn as sns
(2) 히스토그램 (Histogram) - 연봉 분포 확인
df['연봉'].hist(bins=5, edgecolor='black')
plt.xlabel('연봉')
plt.ylabel('빈도수')
plt.title('연봉 분포')
plt.show()
(3) 막대 그래프 (Bar Chart) - 도시별 평균 연봉
df.groupby('도시')['연봉'].mean().plot(kind='bar', color=['blue', 'green', 'red', 'purple'])
plt.xlabel('도시')
plt.ylabel('평균 연봉')
plt.title('도시별 평균 연봉')
plt.show()
(4) 박스플롯 (Box Plot) - 연봉 분포 확인
sns.boxplot(x=df['연봉'])
plt.title('연봉 분포')
plt.show()
(5) 산점도 (Scatter Plot) - 나이와 연봉의 관계
plt.scatter(df['나이'], df['연봉'], color='red')
plt.xlabel('나이')
plt.ylabel('연봉')
plt.title('나이와 연봉의 관계')
plt.show()
3. 상관관계 분석 (Correlation Analysis)
print(df.corr()) # 상관관계 행렬 출력
sns.heatmap(df.corr(), annot=True, cmap='coolwarm', fmt='.2f')
plt.title('특성 간 상관관계')
plt.show()
- corr() 메서드를 사용하면 숫자형 변수 간의 상관관계를 확인할 수 있습니다.
- Seaborn의 heatmap()을 활용하면 시각적으로 상관관계를 확인하기 좋습니다.
4. 마무리
이번 포스팅에서는 Pandas를 활용한 데이터 분석 및 시각화 방법을 배웠습니다.
다음 글에서는 실제 데이터셋을 활용한 실전 분석 예제를 다룰 예정이니 기대해 주세요! 😊
728x90