R语言 逐步回归分析 AIC

2024-01-17 07:30
文章标签 语言 分析 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)
复制代码

多元线性回归结果分析

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

#2.逐步回归分析

tstep<-step(tlm)
summary(tstep)

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

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

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

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

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

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

drop1(tstep)

结果分析

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

 

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

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

结果分析

所有的检验均为显著

因此所得回归方程为y=52.57735+ 1.46831x1+ 0.66225x2.

这篇关于R语言 逐步回归分析 AIC的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/615287

相关文章

C语言中位操作的实际应用举例

《C语言中位操作的实际应用举例》:本文主要介绍C语言中位操作的实际应用,总结了位操作的使用场景,并指出了需要注意的问题,如可读性、平台依赖性和溢出风险,文中通过代码介绍的非常详细,需要的朋友可以参... 目录1. 嵌入式系统与硬件寄存器操作2. 网络协议解析3. 图像处理与颜色编码4. 高效处理布尔标志集合

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

C 语言中enum枚举的定义和使用小结

《C语言中enum枚举的定义和使用小结》在C语言里,enum(枚举)是一种用户自定义的数据类型,它能够让你创建一组具名的整数常量,下面我会从定义、使用、特性等方面详细介绍enum,感兴趣的朋友一起看... 目录1、引言2、基本定义3、定义枚举变量4、自定义枚举常量的值5、枚举与switch语句结合使用6、枚

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

Python 迭代器和生成器概念及场景分析

《Python迭代器和生成器概念及场景分析》yield是Python中实现惰性计算和协程的核心工具,结合send()、throw()、close()等方法,能够构建高效、灵活的数据流和控制流模型,这... 目录迭代器的介绍自定义迭代器省略的迭代器生产器的介绍yield的普通用法yield的高级用法yidle

Go 语言中的select语句详解及工作原理

《Go语言中的select语句详解及工作原理》在Go语言中,select语句是用于处理多个通道(channel)操作的一种控制结构,它类似于switch语句,本文给大家介绍Go语言中的select语... 目录Go 语言中的 select 是做什么的基本功能语法工作原理示例示例 1:监听多个通道示例 2:带

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java