DTS: Missing Value detection(01)
♠ Ref.01
Missing Value : 결측치
- 정의 :
- Missing Feature(누락 data) 를 처리 해주어야 ML이 잘 돌아 간다.
- Na, Nan 과 같은 값
- 종류 :
- Random : 패턴이 없는 무작위 값
- No Random : 패턴을 가진 결측치
Deletion
- deletion해서 특성이 바뀌지 않는다면, 가장 좋은 방법
- dropna()
- axis = (0 : 행 제거, default),(1: 열제거)
- subset = (특정 feature을 지정하여 해당 누락 data 제거)
- Listwist(목록삭제)
- 결측치가 있는 행 전부 삭제
- pairwise(단일 값 삭제)
1 | df = df.dropna() # 결측치 있는 행 전부 삭제 |
1 | df = df.dropna(subset=['col1', 'col2', 'col3']) |
df[].fillna() : 특정 column만 대치
1 | # 0으로 대체하기 |
1 | # 바로 위의 값으로 채우기 |
replace()
1 | # 대체, 결측치가 있으면, -50으로 채운다. |
interpolate()
- 만약, 값들이 선형적이라추정 후 간격으로 처리
1 | df.interpolate(method = 'linear' , limit_direction = 'forward') |
prediction Model (예측모델)
- 결측치가 pattern을 가진다고 가정하고 진행.
- 결측값이 없는 컬럼들로 구성된 dataset으로 예측
- 회기분석기술 혹은 SVM과같은 ML 통계기법이 있다.
guid Line (Missiong Value : MV)
- MV < 10% : 삭제 or 대치
- 10% < MV < 50% : regression or model based imputation
- 50%< MV : 해당 column 제거
DTS: Missing Value detection(01)
https://yoonhwa-p.github.io/2021/12/21/python/DTS_MissingValue/
You need to set
install_url
to use ShareThis. Please set it in _config.yml
.