더북(TheBook)

Glucose, BloodPressure, SkinTickness, Insulin, BMI는 모두 연속 변수이므로 정상 값의 평균을 사용할 수 있다.

먼저 0을 NaN으로 바꿔서 판다스가 결측값을 인식하게 만든다.

import numpy as np

df['Glucose'] = df['Glucose'].replace(0, np.nan)
df['BloodPressure'] = df['BloodPressure'].replace(0, np.nan)
df['SkinThickness'] = df['SkinThickness'].replace(0, np.nan)
df['Insulin'] = df['Insulin'].replace(0, np.nan)
df['BMI'] = df['BMI'].replace(0, np.nan)

0을 모두 바꿨는지 한 번 더 확인하자.

print("Number of rows with 0 values for each variable")
for col in df.columns:
    missing_rows = df.loc[df[col]==0].shape[0]
    print(col + ": " + str(missing_rows))

▲ 그림 2-10 각 칼럼이 가진 0의 개수 재확인

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