728x90
Github Link
07-1 결측치 정제하기
결측치 (Missing Value)
- 누락된 값, 비어있는 값
- dropna()로 결측치를 제거
# 모든 결측치가 포함된 행 제거 df.dropna() # 특정 열에서만 결측치가 포함된 행 제거 df.dropna(subset = ['변수명1', '변수명2', '변수명3'])
- fillna()로 결측값을 대신할 값(ex. 평균, 중앙값)으로 채워넣기
- 결측치 대체법 (Imputation)
- 데이터가 손실되어 분석 결과가 왜곡되는 문제를 보완 가능
# 결측치(NaN)를 '대체값'으로 변경 df.fillna(대체값)
07-2 이상치 정제하기
이상치 (Anomaly)
- 존재할 수 없는 값
- 이상치를 결측 처리(NaN)한 후 결측치 정제하기
- np.where()에서 반환값에 문자가 포함된다면 np.nan이 NaN이 아닌 'nan'으로 처리됨
- 극단적인 값 (극단치, Outlier)
- seaborn.boxplot()을 이용해 극단치의 기준을 지정
sns.boxplot(data = df, y = '변수명') pct25 = df.quantile(.25) # 1분위수 (하위 25%) pct75 = df.quantile(.75) # 3분위수 (하위 75%) iqr = pct75 - pct25 # IQR upper_bound = pct75 + 1.5 * iqr # 극단치 상한 lower_bound = pct25 - 1.5 * iqr # 극단치 하한
728x90
반응형