-
결측치 다루기 (Feat. 결측치를 임의의 숫자로 대체하기)카테고리 없음 2022. 4. 11. 02:18
데이터 확인을 했다면
그 안에는 알수없는 내용이 포함되어있을것이다.
예를들면 NaN 이라던지 Na 으로 칭하며 다른언어에서는 Null 이라고도 하는데,
이를 '결측치' 라고 부른다.
Missing feature, NA (Not Available) : '결측치'라고 하며 값이 표기되지 않은 값
먼저, 데이터프레임에서 결측치가 있는지부터 확인 해 보자.
# isnull 로 결측치를 데이터로 확인 df2.isnull()
위와 같은 결과가 출력되었다.
False는 값이 들어있다는 말이고,
반대로
True 는 값이 없는상태, 즉 결측치 임을 나타낸다.
결측치의 여부를 데이터프레임으로 확인하였으니 간단하게 어느 위치에 몇개나 있는지 확인을 해 보자.
# .sum 으로 개수를 확인 df2.isnull().sum()
위와 같은 결과가 출력되었다.
이 말은 즉슨,
결측치가 없다는 말이다.
만약 결측치가 들어있다면 이를 임의의 숫자로 대체하는 방법이 있다.
# 결측치를 0 으로 대체하며, 기존의 데이터를 수정함 (False == 수정하지않음) df2.fillna(0, inplace=True)
fillna 함수는 존재하는 결측치를 임의의 숫자로 대체하며
inplace 의 파라미터를 True 로 지정하여 기존 데이터프레임에 변경된 설정을 덮어쓰겠다는 의미이다.
예시를 보자.
변경 전 변경 후 추가로,
df2.dropna()
.dropna() 함수를 사용한다면 결측치가 있는 컬럼은 필요없다고 간주하여 행 자체를 삭제하는 함수이다.결측치를 다루는건 추후에 머신러닝에서 가장 중요한 부분이며 누락된 데이터가 있을때, 제대로 역할을 하지 못한다.꼭 숙지하기로 하자.