首页 > 代码库 > 多元线性回归理论与实践

多元线性回归理论与实践

多元线性回归模型用途:

1、  回归用来拟合,解释现象;

2、  用来构建观测数据集与自变量之间一个预测模型;

3、  用来量化y与 技术分享 相关性强度

假设:

1、  观测数据技术分享 相互独立

2、  随机误差服从于方差相同的正态分布

原理:

技术分享

技术分享

技术分享

技术分享

####R语言####################

1、#########################查看数据相关性######################################

data=http://www.mamicode.com/iris

round(cor(data[,1:4]),3)

plot(data$x1,data$x2)

2、#########################初步建模##########################################

lm1=lm(y~x1+x2+x3,data=http://www.mamicode.com/a1)

Summary(lm1)

通过F检验,发现初步建模的模型是否线性关系显著。从T检验发现,看哪几个自变量与因变量线性关系较为显著(注意,并不是说其余字段可以剔除)。

3、#######################模型诊断,即显著性检验##############################

par(mfrow=c(2,2)) ####设置画图为2*2的格式

plot(lm1,which=c(1;4)) ########画出lm1中对应于模型检验的4张图,包括残差图(自变量随机误差项是否同方差) 、QQ图(检验随机误差项是否正态分布)和Cook距离图(检验异常值)

a1=a1(-47)#########如有异常值,应以剔除

################################剔除后看效果############################

Lm2=lm(y~x1+x2+x3,data=http://www.mamicode.com/a1)

Summary(lm2)

4、####################检验自变量多重共线性##################################

#####################方差膨胀因子检验:VIF###########################

Library(car)

Round(vif(lm2),2)

####################AIC和BIC选择#########################

Lm.aic=step(lm2,trace=F)

Summary(lm.aic)

Lm.bic=step(lm2,k=log(length(a1[,1])),trace=F)

Summary(lm.bic)

5、##############################模型效果#######################################

Y1=predict(lm2,a2)

Y2= predict(lm.aic,a2)

Y2= predict(lm.bic,a2)

Y0=a2[,10]

R0=y0-a2$ROEt

R1=y0-y1

R2=y0-y2

R3=y0-y3

Resid=abs(as.data.frame(cbind(r0,r1,r2,r3)))

Sampply(resid,mean)

 

#########matlab语言########################

1、  b=regress(Y,X),b 为回归系数估计值

2、  [b,bint,r,rint,stats]=regress(Y,X,alpha)

alpha 为显著性水平(缺省时设定为0.05),b,bint 为回归系数估计值和它们的置信区间,r,rint 为残差(向量)及其置信区间,stats 是用于检验回归模型的统 计量,有四个数值,第一个是 ,第二个是F,第三个是与F 对应的概率p, 拒绝,回归模型成立,第四个是残差的方差

3、  残差及其置信区间可以用 rcoplot(r,rint)画图

#######################查看除第?个数据外其余残差的置信区间均包含零点,即视为异常点,将其剔除后重新计算###########################

4、########################实现变量选择##############################

stepwise(x,y,inmodel,alpha) 其中x是自变量数据,y是因变量数据,分别为 m n× 和 1 ×n 矩阵,inmodel是矩阵x的 列数的指标,给出初始模型中包括的子集(缺省时设定为空),alpha为显著性水平。

 

多元线性回归理论与实践