R语言 逐步回归分析 AIC

R语言 逐步回归分析 AIC逐步回归分析是以AIC信息统计量为准则,通过选择最小的AIC信息统计量,来达到删除或增加变量的目的

大家好,又见面了,我是你们的朋友全栈君。

关注微信公共号:小程在线

 

R语言 逐步回归分析 AIC

R语言 逐步回归分析 AIC

关注CSDN博客:程志伟的博客

逐步回归分析是以AIC信息统计量为准则,通过选择最小的AIC信息统计量,来达到删除或增加变量的目的。

R语言中用于逐步回归分析的函数 step()    drop1()     add1()

#1.载入数据 首先对数据进行多元线性回归分析

复制代码
tdata<-data.frame(
  x1=c( 7, 1,11,11, 7,11, 3, 1, 2,21, 1,11,10),
  x2=c(26,29,56,31,52,55,71,31,54,47,40,66,68),
  x3=c( 6,15, 8, 8, 6, 9,17,22,18, 4,23, 9, 8),
  x4=c(60,52,20,47,33,22, 6,44,22,26,34,12,12),
  Y =c(78.5,74.3,104.3,87.6,95.9,109.2,102.7,72.5,
       93.1,115.9,83.8,113.3,109.4)
)
tlm<-lm(Y~x1+x2+x3+x4,data=tdata)
summary(tlm)
复制代码

多元线性回归结果分析

R语言 逐步回归分析 AIC

通过观察,回归方程的系数都没有通过显著性检验

#2.逐步回归分析

tstep<-step(tlm)
summary(tstep)

R语言 逐步回归分析 AIC

结果分析:当用x1 x2 x3 x4作为回归方程的系数时,AIC的值为26.94

              去掉x3 回归方程的AIC值为24.974;去掉x4 回归方程的AIC值为25.011……

              由于去x3可以使得AIC达到最小值,因此R会自动去掉x3;

去掉x3之后 AIC的值都增加 逐步回归分析终止  得到当前最优的回归方程

R语言 逐步回归分析 AIC

回归系数的显著性水平有所提高 但是x2 x4的显著性水平仍然不理想

#3.逐步回归分析的优化

drop1(tstep)

结果分析

R语言 逐步回归分析 AIC

如果去掉x4 AIC的值从24.974增加到25.420 是三个变量中增加最小的

 

#4.进一步进行多元回归分析

tlm<-lm(Y~x1+x2,data=tdata)
summary(tlm)

结果分析

R语言 逐步回归分析 AIC

所有的检验均为显著

因此所得回归方程为y=52.57735+ 1.46831×1+ 0.66225×2.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142410.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • crane:字典项与关联数据处理的新思路[通俗易懂]

    crane:字典项与关联数据处理的新思路[通俗易懂]前言在我们日常开发中,经常会遇到一些烦人的数据关联和转换问题,比如典型的:对象属性中个有字典id,需要获取对应字典值并填充到对象中;对象属性中有个外键,需要关联查询对应的数据库表实体,并获取其

    2022年8月16日
    5
  • Windows编译ollvm_windows交叉编译linux

    Windows编译ollvm_windows交叉编译linux听过Mozilla(火狐浏览器的娘家)的javascript引擎吗?感兴趣吗?想在windows平台的应用开发中使用这个引擎吗?肯定?好,往下看!本文给出Windows平台SpiderMonkey的32位和64位静态库编译方法 WINDOWS-SpiderMonkey32位Release静态库,开心吧?网上2017年以前的例子,你不一定能编译的过

    2022年10月17日
    0
  • Vue3如何关闭eslint

    Vue3如何关闭eslintvue3

    2022年5月6日
    42
  • vscode怎样新建项目和文件

    vscode怎样新建项目和文件vscode跟其他编辑器不太一样,今天咪咪我就来给大家分享一下vscode新建项目和文件的方法。需要用品:电脑vscode01、首先是新建文件,如果只是单一的文件,可以直接点击欢迎界面的“新建文件”,这样即可得到一个新的文件。02、而如果欢迎界面被你关闭掉了,则可以在文件菜单中来新建一个文件。当然,这两个方法都只是新建单一文件,并不是一个完整的项目哦。03、接着我们开始创建一个项目,首先…

    2022年6月29日
    65
  • Java高并发读写文件[通俗易懂]

    Java高并发读写文件[通俗易懂]在实际的项目中我们经常会与遇到操作文件的情况,这是很常见的,但是我们在实际中用传统的I/O操作不能满足我们项目的需要并且对文件的写特别慢,操作比较麻烦。那么我们怎么样实现呢?最近在项目中我们遇到了高并发的事情,我是这样操作的。利用JavaNIO实现非阻塞式的读写,通过锁机制完成高并发下的文件的操作。publicvoidrun(){Filefile=newFile(“/

    2022年5月18日
    33
  • pytorch mseloss_pytorch中文手册

    pytorch mseloss_pytorch中文手册1、均方差损失函数loss,x,y可以是向量或者矩阵,i是下标。很多的loss函数都有size_average和reduce两个布尔类型的参数。因为一般损失函数都是直接计算batch的数据,因此返回的loss结果都是维度为(batch_size,)的向量。(说的是一般的情况,这里返回的没有维度为(batch_size,)这种情况)2、nn.MSELoss()参数介绍(1)如果reduction=‘none’,直接返回向量形式的loss(2)如果redu

    2022年9月17日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号