Page 36 -
P. 36

이제 결측값 문제를 어떻게 해소할 수 있는지 알아보자. 먼저 다음 코드를 실행해 어떤 칼럼에 결
               측값이 있는지 알아낼 수 있다.

                 print(df.isnull().any())


                  그림 1-19 결측값 여부 확인










               당연하게도 sepal_length에 결측값(즉, 널(null))이 있다고 나왔다. 이처럼 판다스를 사용해 결측
               값이 어떤 칼럼에 있는지 간편하게 확인할 수 있다.

               결측 문제를 해결하는 가장 쉬운 방법은 해당 로우를 제거하는 것이다. 이 기능은 판다스의
               dropna 함수가 지원한다.

                 print("Number of rows before deleting: %d" % (df.shape[0]))
                 df2 = df.dropna()
                 print("Number of rows after deleting: %d" % (df2.shape[0]))


                  그림 1-20 결측값이 있는 로우 제거




               또는 결측값을 sepal_length 칼럼의 평균값으로 대체할 수 있다.

                 df.sepal_length = df.sepal_length.fillna(df.sepal_length.mean())



                 Note   판다스의 df.mean() 함수는 결측값을 제외한 평균을 계산한다.



               결측값이 제대로 처리됐는지 다시 확인해 보자.

                 print(df.isnull().any())







         48





     신경망교과서_07.indd   48                                                                     2020-05-19   오전 9:04:33
   31   32   33   34   35   36   37