본문 바로가기
Python 파이썬/seaborn

seaborn ) 범주형 데이터의 분포 시각화

by 하이방가루 2022. 3. 29.
728x90
반응형

범주형 변수에 들어있는 각 범주별 데이터의 분포를 확인하는 방법

히트맵 heatmap

plt.figure(figsize=(6,4))
# 피벗테이블로 범주형 변수를 각각 행, 열로 재구분하여 정리
tips_var= tips.pivot_table(
	index="smoker", columns="sex",
	aggfunc="size"	# 그룹 함수
    )
# 히트맵 그리기
sns.heatmap(
    tips_var,	# 데이터프레임
    cmap=sns.light_palette("gray", as_cmap=True), # 컬러맵
    annot=True,	# 데이터 값 표시 여부
    fmt="d"	# 정수형 포맷
    # cbar=False	# 컬러바 표시여부
)
plt.show()

swarm 그래프

plt.figure(figsize=(6,4))
sns.swarmplot(x="day", y="total_bill", data=tips)
# hue='sex' 로 성별 데이터도 추가해서 볼수있음.
plt.show()

# catplot() 함수 활용
plt.figure(figsize=(6,4))
sns.catplot(x="day", y="total_bill", hue="sex", kind="swarm", data=tips)
plt.show()

strip 그래프

plt.figure(figsize=(6,4))
sns.stripplot(x="day", y="total_bill", data=tips, jitter=True)
plt.show()

# catplot() 함수 활용
plt.figure(figsize=(6,4))
sns.catplot(x="day", y="total_bill", hue="sex", kind="strip", data=tips)
plt.show()

사분위수 그래프

박스 플롯 box plot

  간격이 좋을곳일 데이터가 몰려있다.

plt.figure(figsize=(6,4))
sns.boxplot(x= "sex",y= "tip",hue='day',data= tips)
plt.show()

plt.figure(figsize=(6,4))
sns.catplot(x='sex',y='tip',kind='box',data=tips)
plt.show()

바이올린 플롯 violin plot

  사분위뿐만 아니라 데이터의 분포도 직접적으로 보여준다.

plt.figure(figsize=(6,4))
sns.violinplot(x="sex", y="tip", data=tips)
plt.show()

728x90
반응형

댓글