더북(TheBook)

붓꽃 데이터셋을 다시 사용하자. 하지만 붓꽃 데이터셋에는 결측값이 없다. 실습을 위해 값을 임의로 지우고 진행한다. 다음 코드는 로우 열 개를 무작위로 고르고 sepal_length 값을 지운다.

import numpy as np
import pandas as pd

# 붓꽃 데이터셋을 다시 가져온다
URL = 'https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data'
df = pd.read_csv(URL, names = ['sepal_length', 'sepal_width', 'petal_length', 'petal_width', 'class'])

# 로우 열 개를 무작위로 고른다
random_index = np.random.choice(df.index, replace= False, size=10)

# 무작위로 고른 로우의 sepal_length 값을 None으로 바꾼다
df.loc[random_index,'sepal_length'] = None

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

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

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

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.