Search
📊

05. ML Workflow - EDA

Created
2023/06/28 08:09
Tags
data science
machine learning
data analysis
EDA(Exploratory Data Analysis) : 데이터에서 분석에 필요한 여러가지 통계량을 계산하고, 시각화를 통해서 확인하는 작업.
탐색적 데이터 분석(Exploratory Data Analysis, EDA)은 데이터와 친해지는 과정입니다.
분석을 하면서 데이터에서 확인하고 싶은 정보들을 확인하는 과정입니다.
정답처럼 규칙처럼 정해진 프로세스가 따로 없고, 분석가들마다 방법론이 조금씩 다릅니다.
어떤 데이터를 사용하느냐에 따라서 다양한 방법론이 존재합니다.
데이터에 대해서 많이 알수록, EDA도 잘할 수 있습니다. (domain knowledge)
나만의 EDA process를 만들 수록, Data Scientist로서의 역량이 갖추어 진다고 할 수 있습니다.
설명의 편의를 위해서 Iris dataset이 모듈2까지 거쳐서 다음과 같이 정의되었다고 가정해봅니다.

데이터 크기 확인

주어진 Iris dataset의 크기는 150 rows, 6 columns 입니다. (150 x 6)
pandas를 기준으로 메모리 사용량은 대략 7.2KB 입니다.

데이터 분포 확인

target distribution
데이터는 총 3가지의 클래스를 가지고 있으며, 모든 클래스의 데이터 샘플 수가 같습니다.
Petal Length VS Petal Width
feature끼리 분포를 확인하기 위해 scatterplot을 그렸습니다. scatterplot을 통해 해당 피처들간의 관계를 살펴볼 수 있습니다.
Feature Histogram
histogram 또는 densityplot을 통해서 해당 피처(numeric variable)을 분포를 확인할 수 있습니다. 필요하다면 여러가지 분포와 관련된 통계량들(평균, 분산, 첨도 등)을 함께 확인해보면 좋습니다.

데이터 시각화

Pairplot
pairplot은 모든 피처간의 관계를 한 눈에 볼 수 있는 아주 좋은 도구입니다. 하지만 피처 수가 많으면 사용하기 힘듭니다.
Boxplot
boxplot은 해당 피처의 전체적인 분포와 outlier를 모두 확인할 수 있습니다. boxplot에서 다이아몬드로 보이는 데이터는 해당 피처의 전체 분포에서 멀리 떨어져 있는 데이터로 정의됩니다. (정확히는 IQR * 1.5보다 멀리 떨어져있으면 표시가 됩니다)

통계량 분석

Correlation Matrix
correlation matrix를 통해서 피처간의 상관관계를 직접 확인할 수 있습니다. 이 때는 heatmap을 통해서 한 눈에 관계를 파악할 수 있습니다.
Reference

요약

EDA를 통해서 데이터에 관련된 여러 정보를 얻을 수 있습니다.
EDA에 정해진 방법론은 없습니다. 데이터를 보고 확인하고 싶은 여러가지 통계량을 시각적으로 그려내는 과정으로 이해하면 됩니다.
모델링을 할 때 가장 중요한 포인트가 EDA입니다. 데이터를 왜 잘 살펴봐야하는지, 모델링 파트를 공부하면서 그 중요성을 배워봅시다.
EDA는 다른 사람이 해놓은 분석을 많이 볼수록 다양한 인사이트를 얻을 수 있습니다.

Hands-on

Data Source :
1.
Excel을 이용해서 각 column별 평균, 표준편차를 계산해보세요.
2.
Excel을 이용해서 target distribution을 막대그래프로 그려보세요.