当前位置:   article > 正文

一元线性模型用R语言进行拟合_r语言线性拟合

r语言线性拟合

一、一元线性模型介绍

一元线性模型的数学形式:

y=\beta _0+\beta _1x+\varepsilon

回归分析的主要任务就是通过n组样本观测值,对 \beta _0,\beta _1 进行估计。一般用 \widehat{\beta _0},\widehat{\beta _1} 分别表示\beta _0,\beta _1

的估计值,则称

\widehat{y}=\widehat{\beta _0}+\widehat{\beta _1}x

为y关于x的一元线性经验回归方程。

二、R语言实现

以下为R语言实现一元线性模型拟合相关代码

  1. getwd()#查看工作目录
  2. setwd("文件绝对位置")#设置工作目录
  3. df<-read.csv("exercise1.csv",header = T)#读取拟合数据文件
  4. library(ggplot2)#导入画图包
  5. ggplot(df,aes(x=age,y=height))+
  6. geom_point()#绘制散点图
  7. simple <- lm(height~age,data=df)
  8. summary(simple)
  9. confint(simple)#求解估计值的95%的置信区间
  10. pre=data.frame(age=30)#对age=30进行预测
  11. simple.pre=predict(simple,pre,interval = "prediction",level = 0.95)
  12. simple.pre

1、第一步读取文件数据(注意是csv文件,其他类型文件也能读取,但要修改读取文件的相关代码)

df<-read.csv("exercise1.csv",header = T)#读取拟合数据文件

csv文件:

 查看是否读取文件成功:

2、导入画图包

library(ggplot2)#导入画图包

3、绘制散点图,验证数据是否有相关性

  1. ggplot(df,aes(x=age,y=height))+
  2. + geom_point()#绘制散点图

4、进行数据拟合,计算估计值并进行相关检验

  1. simple <- lm(height~age,data=df)
  2. summary(simple)

Residuals:为残差水平的五数概括,通过它我们可以了解残差的大概水平。
(Intercept):估计值\widehat{\beta _0},即估计截距
age :估计值\widehat{\beta _1},即估计斜率
Estimate:估计值
Std. Error:(standard error)估计的标准差的估计
t value:检验统计量t的值
Pr(>|t|):检验的P值,当P值小于显著性水平α的时候,模型效果显著
”***":代表模型效果非常显著,在“Signif. codes”中给出了解释
Residual standard error: 0.256 on 10 degrees of freedom:10自由度的残差标准差是0.256
Multiple R-squared:拟合优度,结果越接近于1,x和y的整体线性相关度越大;越接近于0,x和y的线性相关度越小。必须指出的是,当拟合优度为0时候只能说明x和y不是线性关系,但是x和y还可能是其他类型的相关关系

5、求解置信区间

confint(simple)#求解估计值的置信区间

6、根据计算可以知道残差值,估计值大小,t检验以及p值,显著性水平。

最终模型求解为:

y=64.9283+0.635x

注意,一元线性回归在做预测的时,预测点的位置离样本点均值越近,预测越准确,离样本点均值越远,预测越不可靠。

7、预测

  1. pre=data.frame(age=30)#对age=30进行预测
  2. simple.pre=predict(simple,pre,interval = "prediction",level = 0.95)
  3. simple.pre

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/912446
推荐阅读
相关标签
  

闽ICP备14008679号