본문으로 건너뛰기
실습하기

Seaborn의 페어플롯과 히트맵

Seaborn은 변수 간 관계를 탐색하는 데 유용하게 사용할 수 있는 페어플롯(pairplot)히트맵(heatmap)을 제공합니다.


페어플롯: 다변수 관계 시각화

pairplot()은 데이터셋의 모든 숫자형 변수 조합에 대해 자동으로 산점도를 생성합니다.

대각선에는 각 변수의 히스토그램(또는 KDE 플롯)이 표시됩니다.

페어플롯을 사용하면 다음과 같은 작업이 가능합니다.

  • 여러 특성 간 관계를 한눈에 파악
  • 변수 간 상관관계 시각적 식별
  • 이상치 및 비정상적 패턴 감지

예를 들어, tips 데이터셋에서 total_bill, tip, size 같은 숫자형 열을 sns.pairplot()으로 쉽게 비교할 수 있습니다.

페어플롯 예시
import seaborn as sns
import matplotlib.pyplot as plt

tips = sns.load_dataset("tips")
sns.pairplot(tips[["total_bill", "tip", "size"]])
plt.show()

히트맵: 상관관계 행렬 시각화

heatmap()행렬의 값을 색상으로 표현하는 그래프이며, 주로 상관계수 행렬을 시각화하는 데 사용합니다.

히트맵을 활용하면 다음과 같은 작업이 가능합니다.

  • 상관관계 행렬을 색상으로 표현
  • 강한 양(+)·음(-)의 상관관계 강조
  • 머신러닝을 위한 특성 선택에 활용

일반적으로 DataFrame에서 상관관계 행렬을 계산한 뒤 sns.heatmap()으로 플로팅합니다.

색상 그라디언트를 적용하면 관계 강도를 직관적으로 표현할 수 있습니다.

히트맵 예시
import numpy as np

corr = tips[["total_bill", "tip", "size"]].corr()
sns.heatmap(corr, annot=True, cmap="coolwarm")
plt.title("상관관계 히트맵")
plt.show()

요약

  • 페어플롯: 산점도와 히스토그램으로 여러 숫자형 변수를 한 번에 비교
  • 히트맵: 색상으로 변수 간 상관관계 강도를 표현하는 행렬 시각화

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!