R语言学习之简单线性回归

从许多方面来看,回归分析都是统计学的核心。它其实是一个广义的概念,通指那些用一个或多个预测变量(也称自变量或解释变量)来预测响应变量(也称因变量、效标变量或结果变量)的方法。即通过已知的点来建立拟合模型,用给定的X值来预测Y值,找到一条合适的拟合曲线,算出合适的斜率和方差。只有一个自变量的情况称为简单回归,大于一个自变量情况的叫做多元回归。


        线性模型:

         

     其中β0和β1是回归系数,ε表示误差。

在R中,拟合线性模型最基本的函数就是lm()。

实例:

物理学家JamesDForbes试图通过水的沸点来估计海拔高度,他知道通过气压计测得的大气压可用于得到海拔高度,气压越低,高度越高,他测量了17个地方水的沸点(℉)及大气压数据,并且对数据作了简单的处理,得到了较为明确的数学关系,所提数据如下:


首先录入数据:

x=matrix(c(194.5,20.79,1.3179,131.79,194.3,20.79,1.3179,131.79,197.9,22.40,1.3502,
           135.02,198.4,22.67,1.3555,135.55,199.4,23.15,1.3646,136.46,199.9,23.35,
           1.3683,136.83,200.9,23.89,1.3782,137.82,201.1,23.99,1.3800,138.00,201.4,
           24.02,1.3806,138.06,201.3,24.01,1.3805,138.05,203.6,25.14,1.4004,140.04,
           204.6,26.57,1.4244,142.44,209.5,28.49,1.4547,145.47,208.6,27.76,1.4434,
           144.34,210.7,29.04,1.4630,146.30,211.9,29.88,1.4754,147.54,212.2,30.06,
           1.4780,147.80),ncol=4,byrow=T,dimnames=list(1:17,c('F','h','log','log100')))

数据结果为:

forbes=as.data.frame(x)    #强制转换为数据框

plot(forbes$F,forbes$log100) #查看F和log100之间的关系

lm.sol=lm(log100~F,data=forbes) #拟合模型

summary(lm.sol)

abline(lm.sol,col="red")

 

可以得出预测模型为:

y = -42.13087 + 0.89546x

残差分析:

lm.res <- residuals(lm.sol)  #残差分析
plot(lm.res)
text(12,lm.res[12],labels=12,adj=1.2)
identify(lm.res)

由图中可发现 12 那点偏离比较远,对结果影响较大,可以把奇异点剔除掉。

lm.up <- lm(log100~F,data=forbes,subset = -12)
summary(lm.up)

模型诊断

par(mfrow=c(2,2))
plot(lm.up)




  • 4
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Halo 咯咯

有你的支持我会更加努力。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值