library(car)
test<-read.csv('test_vif2.csv')
test
#독립변수들의 상관관계를 확인
cor(test[,c('아이큐','공부시간','등급평균')])
#학생번호를 제거한 모든 독립변수로 회귀분석 모델을 생성한다.
original_model<-lm(test$시험점수~.,
data=test[-1])
# 아이큐와 등급평균의 p-value가 크게 나옴. 즉, 각각의 독립변수들은 종속변수에 유의한 영향을 미치지 않는다. 그렇기 때문에 둘다 아이에 의미가 없거나 두 변수들의 다중 공선성을 의심해 봐야함.
#중요하다고 생각되는 독립변수의 회귀계수에 대한 검정결과가 유의하지않게(p-value 가 클때) 나타났을 때 다중 공선성을 의햄해 봐야함
summary(original_model)
vif(original_model)>5 # 팽창계수가 5보다 큰것을 골라낸다,
아이큐 & 등급평균
#팽창계수>5
TRUE 가 나온 독립변수를 하나씩 제거후 회귀분석
모델을 생성
test1<-test[,c(2,3,4)]
# 학생번호와 등급평균 제거
test2<-test[,c(2,4,5)]
# 학생번호와 아이큐 제거
model_wo_grade<-lm(test1$시험점수~.,
data=test1)
model_wo_iq<-lm(test2$시험점수~.,
data=test2)
summary(model_wo_grade)
# Multiple R-squared:
0.9053, Adjusted
R-squared: 0.8782
summary(model_wo_iq) # Multiple R-squared:
0.9154, Adjusted
R-squared: 0.8912
vif(model_wo_grade)>5 # 모든
독립변수 FALSE
vif(model_wo_iq)>5 #
모든 독립변수 FALSE