본문 바로가기
Data Analysis/Machine Learning

Seaborn을 활용한 데이터 분포 시각화 17가지 방법

by SeleniumBindingProtein 2022. 5. 8.
728x90
반응형

Seaborn

  • matplotlib 기반의 시각화 라이브러리이며, 유익한 통계 그래픽을 그리기 위한 고급 인터페이스를 제공

Distribution Plot

  • 데이터의 분포를 시각화하는데 도움을 주며, 이 그래프를 사용하여 데이터의 평균(mean), 중위수(median), 범위(range), 분산(variance), 편차(deviation) 등을 이해할 수 있음
  • Hist Plot
    • 변수에 대한 히스토그램을 표시
    • 하나 혹은 두 개의 변수 분포를 나타내는 전형적인 시각화 도구로 범위에 포함화는 관측수를 세어 표시
  • KDE Plot
    • 하나 혹은 두 개의 변수우에 대한 분표를 그리며, 절대량이라면 kdeplot은 밀도 추정치를 시각화함
    • 결과물로는 연속된 곡선의 그래프를 얻을 수 있음
  • ECDF Plot
    • 누적 분포를 시각화하며, 실제 관측치의 비율을 시각화한다는 장점이 있음
  • Rug Plot
    • x축과 y축을 따라 눈금을 그려서 주변 분포도를 표시하며, 개발 관측치에 대한 위치를 보여줌으로써 다른 그림들을 보완하는데 주로 쓰임

Categorical Plot

  • 범주형 변수를 이해하는데 도움이 되며, 일변량 혹은 이변량 분석에 사용됨
  • Bar Plot
    • 이변량(bivariate) 분석을 위한 plot
    • x축에는 범주형 변수, y축에는 연속형 변수를 넣음
  • Count Plot
    • 범주형 변수의 발생 횟수를 샘
    • 일변량(univariate) 분석
  • Box Plot
    • 최대(maximum), 최소(minimum), mean(평균), 1 사분위수(first quartile), 3 사분위수(third quartile)를 보기 위한 그래프이며, 특이치(outliar)를 발견에도 유용함
    • 단일 연속형 변수에 대해 수치를 표시하거나, 연속형 변수를 기반으로 서로 다른 범주현 변수를 분석할 수 있음
  • Violin Plot
    • Box Plot과 비슷하지만 분포에 대한 보충 정보가 제공됨
  • Strip Plot
    • 연속형 변수와 범주형 변수 사이의 그래프이며, 산점도(scatter plot)로 표시되는데, 범주형 변수의 인코딩을 추가로 사용함
  • Swarm Plot
    • Strip plot과 violin plot의 조합이며, 데이터 포인트 수와 함께 각 데이터의 분포도 제공함

Matrix Plot

  • 시각화를 위해 2차원 행렬 데이터를 사용하는 특별한 유형의 plot
  • 매트릭스 데이터에서는 사이즈가 크기 때문에 패턴을 분석하고 생성하기 어렵고, 다음에 오는 plot은 매트릭스 데이터에 색상을 제공함으로써 조금 더 분석하기 쉽게 도와줌
  • Heat Map
    • Heat map을 통해 데이터 간의 수치에 따라 색상을 입힘으로써 직관적인 통찰을 얻을 수 있음
  • Cluster Map
    • 행렬 데이터를 가지고 있고, 유사성에 따라 몇몇 특징들을 그룹화하기 원한다면 Cluster Map을 사용하면 됨 

Multi-plot Grid

  • Grid plot은 시각화에 대한 제어력을 높이고 코드 한 줄로 다양한 그래프를 표시함
  • Facet Grid
    • 어떠한 조건에 따라 그래프를 각각 확인해보고 싶을 때 사용함
  • Joint Plot
    • 두 변수에 대한 displot의 조합이며, 두 변수에 분포에 대한 분석을 할 수 있음
    • 두 displot 사이에 scatter plot이 추가되어 분포를 추가로 확인할 수 있음
    • scatter plot 대신 hex plot으로 정의할 수도 있음
  • Pair Plot
    • 데이터셋을 통째로 넣으면 숫자형 특성에 대하여 각각에 대한 히스토그램과 두 변수 사이의 scatter plot을 그리며, 이 한 줄이면 데이터를 한눈에 보기 쉬워서 애용함
    • 다른 기능이나 유연성이 더 필요하다면 pairgrid를 사용하면 됨
  • Reg Plot
    • Regression 결과를 그래프로 보여줌
  • LM Plot
    • regplot()과 faceGrid를 결합한 것이며, hue에 들어간 컬럼의 값을 구분하여 따로따로 모델링하여 결과를 보여줌
    • regression을 위한 여러 가지 옵션들이 있음

 

728x90
반응형

'Data Analysis > Machine Learning' 카테고리의 다른 글

MRI and Alzheimers  (0) 2022.05.23
train_test_split 학습데이터와 테스트데이터 분리  (0) 2022.05.06
StandardScaler를 이용하여 데이터 전처리  (0) 2022.05.05
XGBoost  (0) 2022.05.05

댓글