728x90
1) 컬럼별 결측치 확인
df.isnull().sum()
2) 결측치 비율 확인
df_missing = df_service
np.sum(df_missing.isnull())
missing_number = df_missing.isnull().sum().sort_values(ascending=False)
missing_percentage = missing_number/len(df_missing)
missing_info = pd.concat([missing_number,missing_percentage], axis=1, keys=['missing number','missing percentage'])
missing_info.head(50)
3) 그래프로 확인
import missingno as msno
import matplotlib.pyplot as plt
plt.figure(figsize=(5,5))
msno.matrix(df)
plt.show()
* 결측치 처리 방법*
1. 해당 튜플 무시
– 주로 분류 문제에서 클래스 구분 라벨이 빠진 경우
– 결측치가 자주 발생하는 환경에서는 비효율적
2. 기준에 따라 자동으로 채우기
– 결측치에 대한 값을 별도로 정의: 예) "unknown“
– 통계: 전체 평균값, 같은 클래스에 속한 데이터의 평균값
– 추정: 베이지안 확률 추론, 결정 트리
3. 전문가가 직접 값을 채우기
– 가장 신뢰성 있으나 시간과 노력 크게 소모
– 비효율적
반응형
'나는야 데이터사이언티스트 > PYTHON' 카테고리의 다른 글
[Python]py 파일, ipynb 파일 바꾸기 (0) | 2021.10.25 |
---|---|
[Python]Dataframe datetime 날짜 차이 계산하기 (2) | 2021.08.18 |
[Python]DataFrame value type 확인하기 (0) | 2021.07.21 |
[Python]네이버 쇼핑 리뷰 크롤링 하기 (9) | 2021.06.16 |
[Python]lambda 함수(filter,map,reduce) (2) | 2021.03.25 |