ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 결측치 다루기 (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() 함수를 사용한다면 결측치가 있는 컬럼은 필요없다고 간주하여 행 자체를 삭제하는 함수이다.
     
     
    결측치를 다루는건 추후에 머신러닝에서 가장 중요한 부분이며 누락된 데이터가 있을때, 제대로 역할을 하지 못한다.

    꼭 숙지하기로 하자.

    댓글

Designed by Tistory.