踏上R语言之旅:解锁数据世界的神秘密码(五)

server/2025/1/16 5:30:57/

线性与非线性模型及R使用


文章目录

  • 线性与非线性模型及R使用
  • 一、数据的分类与模型选择
    • 1.变量的取值类型
  • 二、广义线性模型
    • 广义线性模型概述
    • Logistic模型
  • 总结


一、数据的分类与模型选择

1.变量的取值类型

因变量记为y,解释变量记为x1,x2,…
因变量y一般有如下五种取值方式:
(1)y为连续变量,如心脏面积、肺活量、血红蛋白量等。
(2)y为“0-1”变量或称二分类变量,如实验“成功”、“失败”,“有效”、“无效”,治疗结果“存活”、“死亡”等。
(3)y为有序变量(等级变量),如治疗结果“治愈”、“显效”、“无效”等。
(4)y为多分类变量,如脑肿瘤分良性、恶性、转移瘤,小儿肺炎分结核性、化脓性和细菌性等。
(5)y为连续伴有删失变量,如某病治疗后存活时间可能有失访删失、终检删失和随机删失等。

解释变量x一般有如下三种取值方式:
(1)x为连续变量,如身高、体重等,一般称x为自变量或协变量。
(2)x为分类变量,如性别:男、女,居住地:城市、村镇、农村等,称x为因素。
(3)x为等级变量,如吸烟量:不吸烟、0–10支、10~20支、20支以上等,x可通过评分转化为协变量,也可以看成因素,等级数看成是因素的水平数。


二、广义线性模型

广义线性模型概述

因变量为非正态分布线性模型称为广义线性模型
在这里插入图片描述
在R语言中,正态(高斯)分布族的广义线性模型事实上同线性模型是相同的,即
gm <-glm(formula,family=gaussian,data)
同线性模型
fm <-Im(formula,data)
得到的结论是一致的,当然,其效率会差很多。
在这里插入图片描述

Logistic模型

在这里插入图片描述
实例分析:

对45名驾驶员的调查结果

> nk=read.table("clipboard",header=T)
> logit.glm<-glm(y~x1+x2+x3,family=binomial,data=nk)
> summary(logit.glm)#Logistic回归模型结果Call:
glm(formula = y ~ x1 + x2 + x3, family = binomial, data = nk)CoefficientsEstimate Std. Error z value Pr(>|z|)  
(Intercept)  0.597610   0.894831   0.668   0.5042  
x1          -1.496084   0.704861  -2.123   0.0338 *
x2          -0.001595   0.016758  -0.095   0.9242  
x3           0.315865   0.701093   0.451   0.6523  
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1(Dispersion parameter for binomial family taken to be 1)Null deviance: 62.183  on 44  degrees of freedom
Residual deviance: 57.026  on 41  degrees of freedom
AIC: 65.026Number of Fisher Scoring iterations: 4

在这里插入图片描述

> logit.step<-step(logit.glm,direction="both")#逐步筛选法变量选择
Start:  AIC=65.03
y ~ x1 + x2 + x3Df Deviance    AIC
- x2    1   57.035 63.035
- x3    1   57.232 63.232
<none>      57.026 65.026
- x1    1   61.936 67.936Step:  AIC=63.03
y ~ x1 + x3Df Deviance    AIC
- x3    1   57.241 61.241
<none>      57.035 63.035
+ x2    1   57.026 65.026
- x1    1   61.991 65.991Step:  AIC=61.24
y ~ x1Df Deviance    AIC
<none>      57.241 61.241
+ x3    1   57.035 63.035
+ x2    1   57.232 63.232
- x1    1   62.183 64.183
> summary(logit.step)#逐步筛选法变量选择结果Call:
glm(formula = y ~ x1, family = binomial, data = nk)Coefficients:Estimate Std. Error z value Pr(>|z|)  
(Intercept)   0.6190     0.4688   1.320   0.1867  
x1           -1.3728     0.6353  -2.161   0.0307 *
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1(Dispersion parameter for binomial family taken to be 1)Null deviance: 62.183  on 44  degrees of freedom
Residual deviance: 57.241  on 43  degrees of freedom
AIC: 61.241Number of Fisher Scoring iterations: 4

在这里插入图片描述

> pre1<-predict(logit.step,data.frame(x1=1))#预测视力正常司机Logistic回归结果
> p2<-exp(pre2)/(1+exp(pre2))#预测视力有问题的司机发生事故概率
错误: 找不到对象'pre2'
> p1<-exp(pre1)/(1+exp(pre1))#预测视力正常司机发生事故概率
> pre2<-predict(logit.step,data.frame(x1=0))#预测视力有问题的司机Logistic回归结果
> p2<-exp(pre2)/(1+exp(pre2))#预测视力有问题的司机发生事故概率
> c(p1,p2)#结果显示1    1 
0.32 0.65 

可见,P1=0.32,P2=0.65,说明视力有问题的司机发生交通事故的概率是视力正常的司机的两倍以上。


总结

本小节主要学习了数据的分类与模型选择以及广义线性模型,尤其是 Logistic模型的方法介绍和实际应用操作,继续加油!


http://www.ppmy.cn/server/28818.html

相关文章

聚类分析:使用R语言对Iris数据集进行K均值聚类

引言 聚类分析是一种常用的无监督学习技术&#xff0c;旨在将数据集中的样本分成具有相似特征的组。K均值聚类是其中一种常见的方法&#xff0c;它通过将数据点划分为K个簇&#xff0c;并使每个数据点与其所属簇的中心点距离最小化来实现聚类。本文将介绍如何使用R语言执行K均…

【mysql】mysql中的数据类型知多少?

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

【STM32+HAL】读取电池电量

一、准备工作 有关CUBEMX的初始化配置&#xff0c;参见我的另一篇blog&#xff1a;【STM32HAL】CUBEMX初始化配置 有关定时器触发ADC模式配置&#xff0c;详见【STM32HAL】ADC采集波形实现 有关软件触发ADC模式配置&#xff0c;详见【STM32HAL】三轴按键PS2摇杆 二、所用工具…

实验报告1 小费数据分析(包含描述性-数据可视化)

实验报告1 小费数据分析 实验内容 小费数据分析 实验思路:读取数据-数据预处理-探索性数据分析(描述性统计分析)-分组分析-可视化分析-特征工程 实验环境工具:VS code 编程语言:python 实验原理: (用到pandas库的哪些基本概念和方法?这些方法分别是什么作用?) 在上述…

PostgreSQL 怎么查看记录数据的查看或者变更的数据库日志

在 PostgreSQL 中&#xff0c;可以通过多种方式配置和查看记录数据变更或查询的日志。以下是一些基本的步骤和配置选项&#xff0c;帮助您设置和查看日志&#xff1a; 1. 配置日志记录 PostgreSQL 的日志行为可以通过修改配置文件 postgresql.conf 来控制。以下是一些关键的日…

uniapp 对接 Apple 登录

由于苹果要求App使用第三方登录必须要求接入Apple登录 不然审核不过 所以&#xff1a; 一、勾选苹果登录 二、 设置AppId Sign In Apple 设置完成重新生成描述文件 &#xff01;&#xff01;&#xff01;&#xff01;证书没关系 示例代码&#xff1a; async appleLogin…

大学四年应该如何度过

第一点&#xff1a;不要挂科&#xff0c;学习成绩要努力进入专业前30% 第二点&#xff1a;多跟优秀的学长学姐沟通&#xff0c;向他们学习。学习他们是如何创业的、如何学习的、如何考研的、如何发扬自己兴趣点的、如何找工作的等等&#xff0c;你将会很受益&#xff1b; 第三点…

数据结构-数组

目录 一维数组 二维数组 数据结构是计算机存储、组织数据的一种方式,相互之间存在一种或多种特定关系的数据元素的集合。数据结构研究的内容是如何按一定的逻辑结构,把数据组织起来,并选择适当的存储表示方法把逻辑结构组织好的数据存储到计算机的存储器里。数据结构和算法…