Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 모듈러블록체인
- GPT
- 결측치제거
- 영지식롤업
- ptyhon
- 비지도학습
- K-Means
- 군집화
- 결측치
- 블록체인
- 데이터과학을위한통계
- 이더리움
- 이더
- l2솔루션
- 레이어2솔루션
- 파이썬
- nft
- 비탈릭부테린
- 블록체인트릴레마
- 데이터분석
- 결측치처리
- 머신러닝
- 데이터전처리
- eda
- Clustering
- 옵티미스틱롤업
- Chat GPT
- 확장성문제
Archives
- Today
- Total
min
[python 데이터 전처리][결측치 처리] 본문
본 글은 https://wooono.tistory.com/103 / https://wikidocs.net/153202 의 내용을 참고하고 정리한 글입니다.
결측치의 종류
- random : 패턴 x
- no random: 패턴 o
결측치 확인하기
- df["col"].isnull() : 결측치 여부 확인
- df["col"].isnull().value_counts() : 결측치 개수 확인
결측치 처리 방법
제거(deletion)
- dropna() : pandas에서 제공하는 결측치 제거 함수
df.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
axis: {0: index / 1: columns} 결측치 제거를 진행 할 레이블
thresh : 결측값 아닌 값이 몇 개 미만일 경우에만 적용
how: {'any' : 존재하면 제거 / 'all' : 모두 결측치면 제거} 제거할 유형
subset: 레이블 지정
inplace: 원본 변경할지의 여부
대치(imputation)
- 대치 값 종류
: 최빈값 / 평균 / similar case imputation(조건부 대치) / generalized imputation(회귀분석 이용한 대치)
- fillna() : 결측값을 원하는 값으로 변경하는 함수
df.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None)
value: 결측값을 대체할 값
method: {bfill: 결측값을 바로 아래 값으로 / ffill:바로 위 값으로 변경} 결측값을 변경할 방식
axis: {0 : index / 1 : columns} 메서드를 적용할 레이블
inplace: 원본을 변경할지 여부
limit: 결측값을 변경할 횟수, 위에서부터 limit로 지정된 갯수만큼만 변경
dowmcast: 다운캐스트할지 여부, downcast='infer'일 경우 float64를 int64로 변경
결측치 처리 가이드라인
- 10% 미만 > 삭제 or 대치
- 10% ~ 50% > regression or model based imputation
- 50% 이상 > 해당 컬럼 자체 제거
'python 문법' 카테고리의 다른 글
[데이터 과학을 위한 통계] chp1 탐색적 데이터 분석(EDA)_1 (0) | 2023.03.20 |
---|---|
[문법][Crosstab] (0) | 2023.03.02 |
[데이터 분석][데이터 전처리][결측치] (0) | 2023.02.28 |
Comments