데이터분석/Pandas&Numpy

pandas 결손 데이터를 처리하는 isna, fillna

ADELA_J 2023. 7. 7. 23:28

<Null, NaN>

- Missing Data, Null 이다. 넘파이의 NaN으로 표시된다.

- 머신러닝알고리즘은 NaN을 처리하지 않으므로 다른 값으로 대체해야 한다.

- NaN은 평균, 총합 등의 함수 연산 시 제외된다.

- NaN 여부를 확인하는 건 isna( )이고, NaN값을 다른 값으로 대체 하는건 fillna( )이다.

 

< isna( ) >

- 데이터가 NaN인지 아닌지 알려준다.

-True 나 False로 알려줌 ▼ 요렇게

▶ 그래서 몇개 있는지 sum() 함수를 추가해 구할 수 있다.

   ▷ sum( )호출시 True는 1, False는 0으로 변환되기 때문에 개수를 구할 수 있는 것.

 

< fillna() >

- 결손데이터를 다른 값으로 대체할 수 있다.

▶ 여기서 포인트는, fillna( )를 이용해 반환 값을 다시 받거나 inplace = True 해야 원본이 바뀐다.

   ▷여기서는 123행, titanic_df['Cabin'] =  이라고 반환 값을 다시 받았다.

▶ Age도 Embarked 컬럼도 NaN을 모두 다른 값들로 대체해 결손 데이터를 처리했다.