R语言用逻辑回归预测BRFSS中风数据、方差分析anova、ROC曲线AUC、可视化探索

全文链接:https://tecdat.cn/?p=33659

行为风险因素监测系统(BRFSS)是一项年度电话调查。BRFSS旨在确定成年人口中的风险因素并报告新兴趋势点击文末“阅读原文”获取完整代码数据)。

相关视频

例如,调查对象被询问他们的饮食和每周体育活动、HIV/AIDS状况、可能的吸烟情况、免疫接种、健康状况、健康日数-与健康相关的生活质量、医疗保健获取、睡眠不足、高血压认知、胆固醇认知、慢性健康问题、酒精消费、水果和蔬菜消费、关节炎负担以及安全带使用情况等。

加载数据

load("brfs.RData")

第一部分:关于数据

数据收集:

对于固定电话样本采用了不成比例分层抽样(DSS),移动电话受访者则是随机选择的,每个受访者被选中的概率相等。我们正在处理的数据集共有330个变量,总共有491,775个观测值(2013年)。缺失值用“NA”表示。

泛化能力:

样本数据应该能够推广到感兴趣的总体。这是对18岁及以上的491,775名成年人进行的调查。它基于一个大规模分层随机样本。可能存在的偏差与非响应、不完整的访谈、缺失值和便利性偏差相关(一些潜在的受访者可能因为没有固定电话和手机而未被纳入在内)。

因果关系:

由于BRFSS是一项观察研究,只能建立变量之间的相关性/关联,并不能确定因果关系。

第二部分:研究问题

研究问题1:

在过去30天内,男女性别在身体和心理健康不好的天数分布上是否存在差异?

研究问题2:

受访者接受采访的月份与其自我报告的健康感知之间是否存在关联?

研究问题3:

收入和医疗保险之间是否存在关联?

研究问题4:

吸烟、饮酒、胆固醇水平、血压、体重与中风的关系是什么?最终,我想看到是否可以通过上述变量对中风进行预测。

第三部分:探索性数据分析

研究问题1:

ggplt(aes(x=phhth, fill=sx), data = bfss3[!is.na(brfs13$sex), ])

44d4ffe151af140e58cf85df69eed8ae.png

ggplot+geom_hitoam(bns=3, psition= psiion_dg

18e326ba0993be1036ed610ede6e0761.png

gplot(aes(x=prth, filsex), data=br203[!is.nbrfs03$ex), ]) +gem_istrm(ns=30, postn = poiioge())

c5e9a9a0c6a51f802c2ff68a67445a88.png

sumary(brss3$ex)

d07d0911c23f59520668f064e8490f24.png

以上三个图显示了男性和女性对过去30天内身体、心理和两者都不好的天数的数据分布。我们可以看到女性受访者远多于男性受访者。

研究问题2:

R
by_mnt <- bs201 %>% fier(iyr=='2013') %>% gop_by(imnth, ghlh) %>% sumaie(n=n())
ggpt(aes(x=ionh, y=n, fill = gehh), data = b_mh[!is.na(by_mt$gehlh), ]) + go_bar(stat = 'idnty', ostin = posion_doe())

e41ca78ddbed3280521bb76ed3edc584.png


点击标题查阅往期内容

fff16b253b523fc8d1f6cfc5a13af752.jpeg

R语言数据可视化分析案例:探索BRFSS数据

outside_default.png

左右滑动查看更多

outside_default.png

01

46918179c400b82b832b88a3ed863e53.png

02

4c0fdec30d8a55992d059a72d75615d5.png

03

3270c91b340e1b11ab97de5a3c455518.png

04

6367a7815d892d9df4d06ae80f8cad7e.png

R
by_mnh1 <- brs13 %>% ftr(iyar=='2013') %>% grup_y(imnh) %>% surse(n=n())
gglot(aes(x=imnh, y=n), daa=bymth1) + gem_ar(stat = 'dentty')

63a118f508c1b8311f8259cf8bbe2375.png

我试图找出人们在不同月份对健康状况的回答是否有所差异。例如,在春季或夏季,人们是否更有可能说自己身体健康?然而,看起来并没有明显的模式可见。

研究问题3:

R
plot(brs203$iome2, brfs13$ltpn1

c0132256f5b0cf21e10893d6645fa862.png

总体来说,高收入的受访者比低收入的受访者更有可能享有医疗保险。

研究问题4:

为了回答这个问题,我将使用以下变量:

  • bphigh4: 是否曾经被告知有高血压

  • toldhi2: 是否曾经被告知有高血胆固醇

  • weight2: 报告的体重(以磅为单位)

  • cvdstrk3: 是否曾被诊断为中风

  • smoke100:至少吸过100支香烟

  • avedrnk2:过去30天内每天平均

首先,将上述变量转换为数值,并查看这些数值变量之间的相关性。

R
slectedfss - brfs2013[vars]
selced_rf$tolhi2 <- iflse(seeted_fss$todh2=="Yes", 1, 0)
corrmarix <- cor(selced_bfss)
corplot(corr.atri

c64a86ade7a8fbb4143344ec8b20ec76.png

没有任何两个数值变量之间似乎存在强相关性。

用逻辑回归预测中风

将答案"Yes, but female told only during pregnancy"和"Told borderline or pre-hypertensive"替换为"Yes"。

R
vr1 <- names(brs013) %in% c('smoke0', 'aedrk2', 'bphg4', 'tldhi2', 'wht', 'cdsrk3')
sroe <- brfs203[vars1]

将'NA'值替换为'No'。

R
4 <- repce(strebh, whch(is.na(stroke$bpig4)), "No")whih(is.na(stroke$soke10)), 'No')

将'NA'值替换为平均值。

R
mean(strke$avedrnk2,.rm = T)

2d7e3983c0e7b5d0816ba0d48756badf.png

R
stoke$vdrk2 <- replce(stoe$aednk2, whch(is.nastroe$avednk2)), 2)

查看将用于建模的数据。

R
hed(sroe)
sumary(sroe)

86b93040027f46da26c3bd9a984cb4f8.png

8bfef24ccb0ffa45f2b8acee0922c162.png

将结果转换为二元结果。

R
strke$vdrk3 <- ifelestrok$cvdsk3=="Ys", 1, 0)

在整理和清理数据之后,现在可以拟合模型。

拟合逻辑回归模型

R
test <- stre[390001:491775,]
odel <- glm(cvdtrk3 ~.,famly=biomil(link = 'logit'),at=trin)
summary(mdel)

8d971aef035ddf5bd0991884fc6ae4fc.png

解释逻辑回归模型的结果:所有变量在统计上都是显著的。

  • 在其他变量相等的情况下,被告知血压高的可能性更容易出现中风。

  • 预测变量toldhi2No的负系数表明,在其他变量相等的情况下,没有被告知血胆固醇高的可能性更不容易中风。

  • 每增加一单位的体重,中风(而不是无中风)的对数几率下降0.00096。

  • 不吸烟至少100支香烟的可能性更小。

  • 过去30天平均每天饮用的酒精饮料每增加一单位,中风的对数几率下降0.027。

R
anva(modl, tet="Chiq")

23c277b6b84064bf1452aac7c1d77a55.png

通过分析偏差表,我们可以看到在逐个添加每个变量时的偏差下降情况。添加bphigh4、toldhi2和smoke100明显降低了残差偏差。其他变量weight2和avedrnk2似乎改善了模型,尽管它们都具有较低的p值。

评估模型的预测能力

R
fite.result <- ifelse(fited.ults > 0.5,1,0)misCasifEror <- mean(ftted.reuts != testvdtk3)
prnt(pase('Accuracy',1misClasiicEror))

969d374b8751720ffaf0cbbe86d8f7ce.png

测试集上的准确率为0.96非常好。

绘制ROC曲线并计算AUC(曲线下面积)

R
p <- predicodel, newdat=est, te="response")
pr <- prdition(p, tet$cdstrk3)
auc <- uc@y.vaus[[1]]

4958b198d1152961d29f1f9394ae5117.png

0f41203067f5b97209b1cde5af8eaa24.png

最后说明一下,当我们分析健康调查数据时,我们必须意识到自我报告的患病率可能存在偏差,因为受访者可能不了解自己的风险状况。因此,为了获得更精确的估计值,研究人员正在使用实验室测试以及自我报告的数据。


8f1405f9caed7b9305757aa3ccafa467.jpeg

点击文末“阅读原文”

获取全文完整代码数据资料。

本文选自《R语言用逻辑回归预测BRFSS中风数据、方差分析anova、ROC曲线AUC、可视化探索》。

911fe544f3c61a6191c307dd6fd5d977.jpeg

05b75c5cf876effbebff1dfd62a75cd3.png

点击标题查阅往期内容

数据分享|R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病

R语言逻辑回归logistic模型分析泰坦尼克titanic数据集预测生还情况

R语言是否对二分连续变量执行逻辑回归

R语言用lme4多层次(混合效应)广义线性模型(GLM),逻辑回归分析教育留级调查数据

R语言随机森林RandomForest、逻辑回归Logisitc预测心脏病数据和可视化分析

R语言基于Bagging分类的逻辑回归(Logistic Regression)、决策树、森林分析心脏病患者

R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险

R语言用局部加权回归(Lowess)对logistic逻辑回归诊断和残差分析

R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化

R语言用线性模型进行臭氧预测:加权泊松回归,普通最小二乘,加权负二项式模型,多重插补缺失值

R语言Bootstrap的岭回归和自适应LASSO回归可视化

R语言中回归和分类模型选择的性能指标

R语言多元时间序列滚动预测:ARIMA、回归、ARIMAX模型分析

R语言用lme4多层次(混合效应)广义线性模型(GLM),逻辑回归分析教育留级调查数据

R语言计量经济学:虚拟变量(哑变量)在线性回归模型中的应用

R语言 线性混合效应模型实战案例

R语言混合效应逻辑回归(mixed effects logistic)模型分析肺癌数据

R语言如何用潜类别混合效应模型(LCMM)分析抑郁症状

R语言基于copula的贝叶斯分层混合模型的诊断准确性研究

R语言建立和可视化混合效应模型mixed effect model

R语言LME4混合效应模型研究教师的受欢迎程度

R语言 线性混合效应模型实战案例

R语言用Rshiny探索lme4广义线性混合模型(GLMM)和线性混合模型(LMM)

R语言基于copula的贝叶斯分层混合模型的诊断准确性研究

R语言如何解决线性混合模型中畸形拟合(Singular fit)的问题

基于R语言的lmer混合线性回归模型

R语言用WinBUGS 软件对学术能力测验建立层次(分层)贝叶斯模型

R语言分层线性模型案例

R语言用WinBUGS 软件对学术能力测验(SAT)建立分层模型

使用SAS,Stata,HLM,R,SPSS和Mplus的分层线性模型HLM

R语言用WinBUGS 软件对学术能力测验建立层次(分层)贝叶斯模型

SPSS中的多层(等级)线性模型Multilevel linear models研究整容手术数据

用SPSS估计HLM多层(层次)线性模型模型

R语言空气污染数据的地理空间可视化和分析:颗粒物2.5(PM2.5)和空气质量指数(AQI)

R语言随机森林RandomForest、逻辑回归Logisitc预测心脏病数据和可视化分析

R语言计算资本资产定价模型(CAPM)中的Beta值和可视化

R语言主成分分析(PCA)葡萄酒可视化:主成分得分散点图和载荷图

R语言时变向量自回归(TV-VAR)模型分析时间序列和可视化

R语言样条曲线、决策树、Adaboost、梯度提升(GBM)算法进行回归、分类和动态可视化

R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化

R语言对布丰投针(蒲丰投针)实验进行模拟和动态可视化生成GIF动画

R语言信用风险回归模型中交互作用的分析及可视化

R语言生存分析可视化分析

R语言线性回归和时间序列分析北京房价影响因素可视化案例

R语言用温度对城市层次聚类、kmean聚类、主成分分析和Voronoi图可视化

R语言动态可视化:绘制历史全球平均温度的累积动态折线图动画gif视频图

R语言动态图可视化:如何、创建具有精美动画的图

R语言中生存分析模型的时间依赖性ROC曲线可视化

d82b79dcdda11a9b3651d6d64fed897d.png

c691360973ae018535a821534f65c9ad.jpeg

a301f5dac7b3d17778f83734372044e6.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/133634.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据分析工具有哪些,哪个好学?

Tableau、帆软BI、思迈特BI、SpeedBI数据分析云……这些都是比较常见的BI数据分析工具。从学习成本、操作难度以及数据可视化分析效果来看&#xff0c;SpeedBI数据分析云都表现地可圈可点。 1、不需下载安装、学习成本低 SpeedBI数据分析云是一款SaaS BI数据分析工具&#xf…

工程内分子目录存放源代码的处理(linux cmake)

1.子目录的CMakeLists文件 注意其中的三个要点&#xff0c;特别注意那个set ....PARENT_SCOPE 那条语句才把子目录里定义的对象让上层目录可见。 #这是子目录的CMakefile, 编译过程中的提示信息 message(STATUS "Enter mqtt dir...")#要点1:这个MODULE_MQTT需要在…

轻量级的Python IDE —— Thonny

现在的开发工具太多了&#xff0c;而且每个开发工具都致力于做成最好用最智能的工具&#xff0c;所以功能越堆越多&#xff0c;越怼越智能。安装这些开发工具比较烧脑&#xff0c;经常需要经过许多配置步骤。作为一个 Python 开发者来说&#xff0c;好多人光是这些配置都要弄半…

数学实验-迭代(二)-分形(Mathematica实现)

一、实验环境&#xff1a;Mathematica 10.3软件 二、实验目的&#xff1a;以迭代的观点介绍分形的基本特性以及生成分形图形的基本方法&#xff0c;使我们在欣赏美丽的分形图形的同时对分形几何这门学科有一个直观的了解。 三、实验内容和步骤以及结果分析 实验2.1&#xff…

Linux网络编程|TCP编程

一.网络基础 1.1网络发展史 Internet&#xff0d;“冷战”的产物 1957年10月和11月&#xff0c;前苏联先后有两颗“Sputnik”卫星上天 1958年美国总统艾森豪威尔向美国国会提出建立DARPA (Defense Advanced Research Project Agency)&#xff0c;即国防部高级研究计划署&#…

Java异常处理(详解)

Java异常处理 前言一、异常与异常类1.异常的概念2.异常类Error类Exception类&#xff08;1&#xff09;非检查异常&#xff08;2&#xff09;检查异常 二、异常处理1.异常的抛出与捕获2.try-catch-finally语句3.声明方法抛出异常3.用throw 语句抛出异常 三、自定义异常类 前言 …

npm 清缓存(重新安装node-modules)

安装node依赖包的会出现失败的情况&#xff0c;如下图所示&#xff1a; 此时 提示有些依赖树有冲突&#xff0c;根据提示 “ this command with --force or --legacy-peer-deps” 执行命令即可。 具体步骤如下&#xff1a; 1、先删除本地node-modules包 2、删掉page-loacl…

驱动开发,IO多路复用实现过程,epoll方式

1.框架图 被称为当前时代最好用的io多路复用方式&#xff1b; 核心操作&#xff1a;一棵树&#xff08;红黑树&#xff09;、一张表&#xff08;内核链表&#xff09;以及三个接口&#xff1b; 思想&#xff1a;&#xff08;fd代表文件描述符&#xff09; epoll要把检测的事件…

哨兵1号(Sentinel-1)SAR卫星介绍

1. 哥白尼计划 说起欧空局的哨兵1号&#xff0c;就不得不先说一下欧空局的“哥白尼计划”。 欧空局的哥白尼计划&#xff08;Copernicus Programme&#xff09;是欧空局与欧盟合作的一项极其重要的地球观测计划。该计划旨在提供免费开放的、可持续的地球观测数据&#xff0c…

【计算机视觉 | 目标检测】arxiv 计算机视觉关于目标检测的学术速递(9 月 15 日论文合集)

文章目录 一、检测相关(6篇)1.1 ALWOD: Active Learning for Weakly-Supervised Object Detection1.2 mEBAL2 Database and Benchmark: Image-based Multispectral Eyeblink Detection1.3 Co-Salient Object Detection with Semantic-Level Consensus Extraction and Dispersio…

如何实现 pdf 转 word

前言&#xff1a;最直接的方式 wps 充会员可以直接转&#xff0c;但是单纯为了 使用这个功能有没啥必要 pdf转word方法 在线转换wps转换其他收费转换方式 在线转换 介绍在线转换&#xff0c;虽然样式简陋但是可以转换成功&#xff0c;转换以后也没有失真 http://ssyr.mynatap…

【无公网IP内网穿透】 搭建Emby媒体库服务器并远程访问「家庭私人影院」

目录 1.前言 2. Emby网站搭建 2.1. Emby下载和安装 2.2 Emby网页测试 3. 本地网页发布 3.1 注册并安装cpolar内网穿透 3.2 Cpolar云端设置 3.3 Cpolar内网穿透本地设置 4.公网访问测试 5.结语 1.前言 在现代五花八门的网络应用场景中&#xff0c;观看视频绝对是主力…

Jenkins 页面部分显示Http状态403 被禁止

前言 生产环境Jenkins部署了一段时间了&#xff0c;结果今天在流水线配置中&#xff0c;部分页面显示Jenkins 页面部分显示Http状态403 被禁止&#xff0c;修改配置点击保存之后偶尔也会出现这个。 问题 以下是问题图片 解决 在全局安全配置里面&#xff0c;勾选上启用代…

使用ExcelJS快速处理Node.js爬虫数据

什么是ExcelJS ExcelJS是一个用于处理Excel文件的JavaScript库。它可以让你使用JavaScript创建、读取和修改Excel文件。 以下是ExcelJS的一些主要特点&#xff1a; 支持xlsx、xlsm、xlsb、xls格式的Excel文件。可以创建和修改工作表、单元格、行和列。可以设置单元格样式、字…

C++之operator=与operator==用法区别(二百一十八)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

常见开源协议详解及应用案例

文章目录 0. 引言软件开源概述开源协议的重要性 1. 开源协议的几个关键概念1. 引用&#xff08;Linking&#xff09;2. 修改&#xff08;Modification&#xff09;3. 衍生品&#xff08;Derivative works&#xff09;4. 获取源码的权力&#xff08;Right to access source code…

【mysql】1044 - Access denied for user ‘root‘@‘%‘ to database ‘test_job‘

登录mysql 为新建的库创建账号和授权 创建和授权命令 grant all on test_job.* to job% identified by 12345;flush privileges; 返回信息 grant all on test_job.* to job% identified by 12345 > 1044 - Access denied for user root% to database test_job > 查询…

linux安装常见的中间件和数据库

文章目录 一、数据库二、redis三、tomcat四、nginx五、mq六、es七、nacos八、neo4j&#xff08;图数据库&#xff09;九、fastdfs其他 一、数据库 linux环境上使用压缩包安装mysql【数据库】Mysql 创建用户与授权 二、redis redis是没有账号的&#xff0c;只能设置密码Linux…

EDA(Exploratory Data Analysis)探索性数据分析

EDA(Exploratory Data Analysis)中文名称为探索性数据分析&#xff0c;是为了在特征工程或模型开发之前对数据有个基本的了解。数据类型通常分为两类&#xff1a;连续类型和离散类型&#xff0c;特征类型不同&#xff0c;我们探索的内容也不同。 1. 特征类型 1.1 连续型特征 …

【Git】万字git与gitHub

&#x1f384;欢迎来到边境矢梦的csdn博文&#x1f384; &#x1f384;本文主要梳理在git和GitHub时的笔记与感言 &#x1f384; &#x1f308;我是边境矢梦&#xff0c;一个正在为秋招和算法竞赛做准备的学生&#x1f308; &#x1f386;喜欢的朋友可以关注一下&#x1faf0;&…