R vif() 以及 step()
library(package="car") data <- read.csv("C:\\users\\mike1\\desktop\\data\\RData\\hald水泥数据.csv", header=T, sep=",",fileEncoding = "utf-8", stringsAsFactors = FALSE) data1 <- data[2:dim(data)[2]] data1 cor(data1) scatterplotMatrix(data1, main="correlation") result <- lm(y~., data=data1) summary(result) vif(result) # we can directly use the function not like python class step(result,direction="forward") step(result,direction="backward") step(result, direction="both") myStep <- step(result, direction="both") myStep1 <- step(result,direction="backward",trace=2) summary(myStep) summary(myStep1)
vif(myStep)
共线性,显示各变量之间有强相关,vif()函数在 car包中, 而step() 函数内置。
偏相关图
相关系数图:
逐步回归图
以上只截取了部分图,但是结果与书上的不一样。最后虽然使用的是逐步回归,但是有一个系数不显著,不知道为什么没把 x4.1这个变量去掉,只能手动选择x1, x2 作为变量。