EDA: 데이터를 이해하는 과정
→ EDA로는 데이터 내 어떤 부분을 제거해야 하는지가 더 명확하게 보일수도 있고, 먼저 깔끔하게 정리하는 것이 오히려 insight를 발견하기 쉽게 만들수도 있음
Data Wrangling: raw data를 분석에 용이하도록 정제, 변형하는 과정
Data Wrangling을 통해 어떤 목적인지, 데이터가 어떤 상태인지에 따라 무엇을 먼저할지를 생각해볼 수 있음
데이터를 가져오고, 탐색하고, 정제하는 과정을 거침 (Gather - Assess - Clean)
Data가 좋은 quality와 tidiness를 가지도록 함
품질의 문제 → 데이터의 contents issue
1) 결측치 (missing values)
제거
결측치가 있는 행 또는 열을 삭제 해당 행 또는 열에서 결측치의 비율이 많아 대체하기 어려운 경우 충분한 데이터를 가지고 있어 해당 행, 열을 삭제하더라도 이후 분석, 모델링에 큰 영향을 미치지 않는 경우 .dropna()
대체 : 결측치를 삭제하지 않고, 특정값을 넣어줌.
가지고 있는 데이터를 통해 결측치 값을 유추할 수 있는 경우
중요한 데이터라서 삭제할 수 없는 경우
fillna()
평균, 중앙값 - numerical
최빈값 - categorical
앞 or 뒤 데이터 padding
예측을 통한 대체 (linear regression …)
모델링 시 imputation 방법 → sklearn KNNImputer, SimpleImputer
+) 결측값 보간 (interpolation) : 시계열(time series) 분석 시에 유용하게 사용 → 데이터 간 상관성, 연속성이 있는 경우, 선형으로 비례하도록 보간
2) 중복값 (duplicates)
3) 부정확한 값 (inaccurate values)
4) 이상치 (outliers)
구조의 문제 → 데이터의 structural issue
tidy data
각 변수(variable)는 하나의 열(column)을 구성
각 관측치(observation)는 하나의 행(row)을 구성
각 유형의 관측 단위가 표를 구성