다중공선성 해결
다중공선성을 일으키는 변수들을 어떻게 다뤄줘야할지에 대해 알아보도록 하겠다.
다중공선성을 해결하는 방법은 크게 3가지가 있다.
1. 변수 정규화
2. 변수 제거
3. PCA(주성분 분석)
이번 시간에는 정규호를 적용하기 전 분산 팽창 요인(VIF)를 확인하고 정규화를 적용한 후에 분산 팽창 요인을 확인해 서로 비교하도록 한다.
#train 데이터의 VIF 계수 출력
vif =pd.DataFrame()
vif['VIF Factor"] = [variance_inflation_factor(train_values,i) for i in range(train.shape[1])]
vif['features'] = train.columns
vif
# MinMaxScaler를 통해 변환
scaler = MInMaxScaler()
scaler.fit(train
train_scale = scaler.transform(train)
#Scaler를 통해 변환된 데이터의 VIF 확인
new_train_df = pd.DataFrame()
new_train_df.columns = train.columns
vif= pd.DataFrame()
vif['VIF Factor"] = [variance_inflation_factor(new_train_df.values,i) for i in range(new_train_df.shape[1])]
vif['features'] = new_train_df.columns
vif
320x100
320x100
'빅데이터 관련 자료 > Dacon' 카테고리의 다른 글
Lv4 | 전처리 | 다중공선성 해결 - PCA (2) (0) | 2021.09.06 |
---|---|
Lv4 | 전처리 | 다중공선성 해결 - PCA (1) (0) | 2021.09.05 |
Lv4 | EDA | 복습 (0) | 2021.09.01 |
Lv4 | EDA | 다중공선성 VIF(분산 팽창 요인) (0) | 2021.08.31 |
Lv4 | EDA | seaborn |다중공선성 Scatter plot (0) | 2021.08.30 |