군침이 싹 도는 코딩

인공지능 학습 데이터 전처리중 nan 처리 방법 (replace) 본문

Python/Machine Learning

인공지능 학습 데이터 전처리중 nan 처리 방법 (replace)

mugoori 2022. 12. 2. 11:40

이 데이터 프레임은 당뇨병 환자와 아닌 환자의 데이터 프레임이다

이 데이터 프레임에는 이상한점이 있다

 

 

위 데이터 프레임의 describe를 보면 Plasma의 최소값이 0 이거나 blood pressure 최소값이 0

이거나 하는등 이상한점이 발견된다 이는 nan이였던곳을 전부 0으로 처리한것이다

인공지능을 만들기전 데이터 전처리를 위해서는 이러한 점을 해결해줘야한다

해결 방법은 데이터가 0인곳을 nan으로 다시바꿔 nan이 들어있는 데이터를 제거하거나

nan을 다른값으로 바꿔주면 된다.

 

 

df.loc[:,'Plas':'age'] = df.loc[:,'Plas':'age'].replace(0,np.nan)
df

# replace 함수를 사용해 0인 데이터를 다시 NaN으로 돌린다

 

 

df.fillna( df.mean() , inplace=True )
df

# 비어있는곳을 fillna를 사용해 평균값을 넣어줬다

이제 정상적인 데이터들이 들어왔으니 전처리를 하면 된다.

'Python > Machine Learning' 카테고리의 다른 글

K-NN  (0) 2022.12.02
up sampling  (0) 2022.12.02
Logistic Regression  (0) 2022.12.01
LinearRegression  (1) 2022.12.01
데이터셋을 트레이닝용과 테스트용으로 나누는법 (train_test_split)  (0) 2022.12.01