多元线性回归——《应用回归分析R语言版》

#第3章—多元线性回归

data3.1<-read.table('clipboard',header=T)#导入数据
lm3.1<-lm(y~x1+x2+x3+x4+x5+x6+x7+x8+x9,data=data3.1) #建立回归方程
summary(lm3.1)

#计算协方差阵与相关阵
X1<-as.matrix(data3.1[,2:10])   #将data3.1中自变量部分的数据提取出来并转换成矩阵形式进行存储
X<-cbind(1,X1)               #将元素全为1的列向量和X1合并生成矩阵X
XX<-t(X)%*%X                #计算矩阵X'X

sigma<-389.4                 #残差的标准差为  的估计值
covBeta<-sigma^2*solve(XX)   #根据公式(3.31)计算协方差矩阵,函数solve()计算矩阵的逆
covBeta

r<-matrix(nrow = 10, ncol = 10) #建立10行10列的矩阵,元素为空
 for(i in 1:10){
   for(j in 1:10)
r[i,j]<-covBeta[i,j]/(sqrt(covBeta[i,i])*sqrt(covBeta[j,j]))}
#根据公式(3.34)计算相关阵中每个元素的值
r
#r<-cor(data3.1)


#方差分析
#install.packages("car")
library(car)
Anova(lm3.1,type="III")       #输出方差分析表,typeII用于回归分析以及不含交互作用的方差分析;typeIII用于含交互作用的方差分析;

lm3.1_drop4<-lm(y~x1+x2+x3+x5+x6+x7+x8+x9,data=data3.1) #lm3.1_drop4<-update(lm3.1,.~.-x4)
summary(lm3.1_drop4)

lm3.1_drop49<-lm(y~x1+x2+x3+x5+x6+x7+x8,data=data3.1)
summary(lm3.1_drop49)

data3.2<-read.table('clipboard',header=T)#导入数据
lm3.2<-lm(y~x1+x2,data=data3.2)
summary(lm3.2)
r<-cor(data3.2)                       #计算相关系数阵
r

#install.packages("corpcor")
library(corpcor)
pcor3.2<-cor2pcor(r) #由相关系数阵计算偏相关系数阵
pcor3.2

e<-resid(lm3.2,digits=5)   #计算残差值
ZRE<-rstandard(lm3.2)    #计算学生化残差
ZRE1<-e/475.8           #计算标准化残差

data3.3<-read.table('clipboard',header=T)#导入数据
cor3.3<-cor(data3.3[,-1]) #用除去第一列年份数据后剩余的样本数据计算相关阵
lm3.3<-lm(y~x1+x2+x3+x4+x5,data=data3.3)
summary(lm3.3)

  • 1
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值