[스파르타코딩클럽]데이터분석 과정/TIL,WIL
심화프로젝트
설득이
2024. 2. 7. 22:11
오늘 한 일
1. 전처리 방식 결정하기
1) 이상치 제거
부채_대비_소득_비율, 연간소득, 총상환원금, 총상환이자, 총계좌수 -> 4분위수 사용해서 이상치 제거하기
columns_to_clean = ['부채_대비_소득_비율', '연간소득', '총상환원금', '총상환이자', '총계좌수']
for col in columns_to_clean:
Q1 = df[col].quantile(0.25)
Q3 = df[col].quantile(0.75)
IQR = Q3 - Q1
lower_limit = Q1 - 1.5 * IQR
upper_limit = Q3 + 1.5 * IQR
cleaned_df = df[(df[col] >= lower_limit) & (df[col] <= upper_limit)]
cleaned_df.info()
2) 주택소유상태 : Any값 확인하고 제거
# '주택소유상태' 열에서 값이 'any'인 행을 삭제합니다.
df2 = df2.drop(df[df['주택소유상태'] == 'any'].index)
# 결과를 확인합니다.
df2.info()
3) 히스토그램으로 정규분포 확인하기
plt.figure(figsize=(10, 5))
sns.histplot(df2['부채_대비_소득_비율'], kde=True, color='blue')
plt.title('Histogram')
4) 범주형 인코딩하기
from sklearn.preprocessing import LabelEncoder, OneHotEncoder
le = LabelEncoder()
oe = OneHotEncoder()