개발로그필름

[데이터 TIL] Pair Plot에 대해 알아보자 본문

데이터분석가/데이터 TIL

[데이터 TIL] Pair Plot에 대해 알아보자

yuullog 2025. 2. 7. 14:19
728x90
반응형
SMALL

🎨 Pair Plot(페어 플롯)이란?

📌 여러 변수 간의 관계를 한눈에 확인할 수 있는 그래프!

Pair Plot(페어 플롯)은 서로 다른 변수들 간의 관계를 비교할 수 있도록 여러 개의 산점도를 한 번에 그린 그래프

보통 데이터에 포함된 모든 수치형 변수(숫자형 데이터)들의 조합을 한 번에 비교할 때 사용

 


 

🧐 Pair Plot이 왜 필요할까?

데이터 분석을 할 때 두 변수 간의 관계를 알고 싶을 때

예를 들면,

키와 몸무게가 관계가 있을까?

나이와 혈압이 연관이 있을까?

공부 시간과 시험 점수는 어떤 관계일까?

 

이런 관계를 하나하나 산점도(Scatter Plot)로 그리면 너무 많아서 헷갈린다

👉 그래서 Pair Plot을 사용하면 모든 변수 조합을 한 번에 비교할 수 있다

 

반응형

 


 

📊 Pair Plot을 쉽게 이해하는 예제

📌 예를 들어, 3개의 변수(키, 몸무게, 나이)가 있다고 해보자

import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd

# 샘플 데이터 생성
data = {
    "이름": ["철수", "영희", "민수", "지수", "태호", "혜진", "지훈", "나연", "도윤", "수아"],
    "키(cm)": [170, 160, 175, 165, 180, 158, 172, 168, 177, 163],
    "몸무게(kg)": [65, 50, 80, 55, 90, 48, 70, 60, 85, 52],
    "나이(살)": [25, 22, 28, 24, 30, 21, 26, 23, 29, 22]
}

# 데이터프레임 변환
df = pd.DataFrame(data, )

# "이름" 컬럼은 필요 없으므로 삭제
df = df.drop(columns=["이름"])

# Pair Plot 그리기
sns.pairplot(df)
plt.show()

 

 


 

🔍 1. 변수 간의 관계 분석 (산점도 분석)

1️⃣ 키(cm) vs 몸무게(kg)

강한 양의 상관관계(Positive Correlation)

키가 증가할수록 몸무게도 증가하는 뚜렷한 패턴이 보임

거의 직선에 가까운 분포 → 키가 클수록 몸무게도 무거운 경향이 있음

즉, 키와 몸무게는 강한 정적 상관관계를 가진다.

 

💡 의미:

✔ 키가 크면 몸무게도 증가하는 자연스러운 관계

✔ 건강 데이터 분석 시 BMI(체질량지수)와 연계할 수 있는 중요한 변수


2️⃣ 키(cm) vs 나이(살)

약한 양의 상관관계 또는 거의 없음

나이가 증가할수록 키도 약간 증가하는 경향이 보이지만, 패턴이 뚜렷하지 않음

성장이 멈춘 성인 데이터를 다루고 있다면 나이에 따른 키 증가가 크지 않음

오른쪽 위로 올라가는 느낌의 산점도여도 완전히 직선적인 패턴이 아니기 때문에 관계가 거의 없음

 

💡 의미:

✔ 성장이 끝난 성인 데이터라면 키와 나이는 큰 관계가 없을 가능성이 높음

✔ 만약 청소년 데이터를 포함했다면 나이가 증가할수록 키가 자라는 패턴이 나타날 수 있음

 


 

3️⃣ 몸무게(kg) vs 나이(살)

약한 양의 상관관계(Positive Correlation)

나이가 많을수록 몸무게가 증가하는 경향이 있지만, 아주 뚜렷하지 않음

즉, 나이가 많을수록 체중이 증가할 가능성이 있지만 개별 차이가 큼

 

💡 의미:

✔ 나이가 증가하면 기초대사량이 낮아지고 운동량이 줄어들면서 체중이 증가할 가능성이 있음

✔ 하지만 개별 차이가 많기 때문에 단순한 관계로 해석하기 어렵고, 생활 습관 데이터를 함께 분석해야 더 정확한 인사이트를 얻을 수 있음

 


 

🔍 2. 변수들의 분포 분석 (히스토그램 분석)

각 변수의 대각선(diagonal)에는 히스토그램이 표시되어 있어 데이터의 분포를 확인할 수 있습니다.

 

1️⃣ 키(cm) 분포

✔ 특정 구간(160~180cm)에 균등하게 분포

✔ 극단적으로 작은 값(150cm 이하)이나 큰 값(190cm 이상)은 없음

✔ 데이터가 정규 분포에 가까운 균등한 형태

 

2️⃣ 몸무게(kg) 분포

✔ 50~90kg 사이에 넓게 분포하지만, 특정 구간(50kg)에서 데이터가 많이 집중됨

✔ 몇 개의 값이 많고 나머지는 고르게 분포 → 특정 그룹(예: 저체중 그룹)이 많을 가능성

 

3️⃣ 나이(살) 분포

✔ 22~30세 사이에 데이터가 넓게 퍼져 있음

✔ 특정 연령(22세, 25세 등)에 데이터가 몰려 있음

✔ 데이터가 특정 연령대에 편중될 가능성이 있음

 


 

🔹 키와 몸무게는 강한 상관관계를 가짐 → 키가 크면 몸무게도 클 확률이 높음

🔹 나이와 키는 별다른 관계 없음 → 성인 데이터이므로 성장이 끝났기 때문

🔹 나이가 많을수록 체중이 증가하는 경향이 있지만, 강한 패턴은 아님 → 생활 습관 분석이 필요

🔹 히스토그램을 보면 특정 연령(22세)과 체중(50kg)에 데이터가 집중됨 → 편향된 샘플일 가능성 고려해야 함

반응형
LIST
Comments