컴공생의 다이어리

[판다스, pandas] 결측값 확인 및 처리(제거, 채우기) - isnull(), dropna(), fillna() 본문

데이터 분석 & 머신러닝

[판다스, pandas] 결측값 확인 및 처리(제거, 채우기) - isnull(), dropna(), fillna()

컴공 K 2021. 7. 30. 00:01

pandas 결측값 확인 및 처리

결측값은 탐색적 데이터 분석에서도, 그 후 더 나아가 머신 러닝 알고리즘을 통해 분석을 할 때에도 성능에 영향을 줄 수 있는 값이다. 결측값은 아예 제거를 해주거나특정 값으로 채워주거나 크게 두 가지 선택을 해주는 것이 좋다.

 

결측값 확인 - isnull(), isnull().sum()

결측값을 확인해보려면 isnull().sum()을 사용하는 것이 간편하다.

위의 예시를 보면 알겠지만 df.isnull()의 결과를 보면 그 값이 null값이라면 True를 null값이 아니라면 False를 출력한다. df.isnull().sum()은 각 컬럼별 결측치가 몇개 있는지 확인하기 편하다.

 

만일 v1컬럼의 값에서 null 값을 가진 행을 추출하려면 아래와 같이 코드를 작성하면 된다.

 

 

결측값 있는 행, 열 제거 - dropna()

결측값 있는 행이나 열을 제거 하기 위해서는 dropna()를 사용하면 된다. dropna 함수의 axis인자의 값으로 0을 넣어주면 행을 제거해주고 열은 axis인자에 1을 넣어주면 된다.

  • 결측값 있는 행 제거 : df.dropna() or df.dropna(axis=0)
  • 결측값 있는 열 제거 : df.dropna(axis=1)

 

 

 

결측값 채우기 - fillna()

결측값을 채우기 위해서는 fillna()를 사용하면 된다. fillna() 안에 특정값을 넣어 그 값으로 채워줄 수도 있지만 method인자에 ffill이나 bfill을 넣어 결측값을 결측값 앞의 인자 혹은 뒤의 인자로 대체해서 채우는 방법도 있다.

  • 결측값을 특정 값으로 채우기 : df.fillna(특정값)
  • 결측값을 결측값의 앞 행의 값으로 채우기 : df.fillna(method='ffill') or df.fillna(method='pad')
  • 결측값을 결측값의 뒷 행의 값으로 채우기 : df.fillna(method='bfill') or df.fillna(method='backfill')
  • 결측값을 각 열의 평균 값으로 채우기 : df.fillna(df.mean())

 

 

https://rfriend.tistory.com/262

 

[Python pandas] 결측값 채우기, 결측값 대체하기, 결측값 처리 (filling missing value, imputation of missing valu

지난번 포스팅에서는 결측값 여부 확인, 결측값 개수 세기 등을 해보았습니다. 이번 포스팅에서는 결측값을 채우고 대체하는 다양한 방법들로서,  - 결측값을 특정 값으로 채우기   (replace missi

rfriend.tistory.com

https://rfriend.tistory.com/263

 

[Python pandas] 결측값 있는 행 제거, 결측값 있는 행 제거 : dropna(axis=0), dropna(axis=1)

지난번 포스팅에서는 Python pandas의 fillna() method를 사용한  - 결측값 여부 확인하기  - 결측값 채우기, 결측값 대체하기 에 대해서 알아보았습니다. 이번 포스팅에서는 Python pandas의 dropna() method를.

rfriend.tistory.com

 

출처 : 핀테크 Pre-인턴십 코스 - 금융 데이터 분석

728x90
Comments