[Pandas] DataFrame NaN 데이터 처리

|

###

NaN이란?

Not a Number의 약어

표현 불가능한 수치형 결과를 의미함.

여러가지 이유에 의해서 생겨난 NaN(결측값)이 존재하는 것을 확인할 수 있다.


NaN값 확인

info 함수를 통하여 개수 확인

isna 함수를 통해 boolean 타입으로 확인

.info( )

Age, Cabin, Embarked 는 891개가 아니며 NaN 값을 포함하고 있음을 알 수 있다.


.isna( )

각각의 element 값이 NaN인지 boolean으로 표현.

특정 컬럼에 대해서도 구할 수 있다.


NaN 처리방법

데이터에서 삭제 : dropna( )

다른값으로 치환 : fillna( )

**dropna( ) **

row 레벨로 보다가 어떤 속성이 하나라도 NaN이면 해당 row를 삭제함.

subset 을 명시하여 NaN를 검사하고 싶은 column만을 줄 수 있다.

Cabin이 NaN인것은 관계없이 Age가 NaN이면 삭제한다.

기본적으로 dropna의 axis의 default값은 0이다. 즉, row level.

이 값을 1로 명시하게 되면 column level로 작동하게 되어

NaN값이 있는 column을 삭제해버린다.


fillna( ) : NaN값 대체하기

평균으로 대체하기

생존자들의 나이 평균

사망자들의 나이 평균

loc를 통해 넣어준다~

위 내용은 fastcampus 강의 내용을 정리한 것입니다.

Comments