R语言使用scitable包交互效应深度挖掘一个陌生数据库

很多新手刚才是总是觉得自己没什么可以写的,自己不知道选什么题材进行分析,使用scitable包后这个完全不用担心,选题多到你只会担心你写不完,写得不够快。
今天演示一下使用scitable包深度挖掘一个陌生数据库

先导入R包和数据

library(survival)
library(scitable)
setwd("E:/r/test")
bc<-read.csv("qztp.csv",sep=',',header=TRUE)

在这里插入图片描述
这个是个来自私人创建的医院内部数据库,我一个朋友的,变量我就不解释了,这个数据有141个变量,605个数据。变量非常多。我们先把变量导出来

dput(names(bc))

在这里插入图片描述
像"SID", “REGDATE”, “REGUID”, "Q1"这些变迁。日期人员的变量没有什么意义,直接删掉,然后定义我们需要研究的全部变量

allVars <-c("Q1120", "Q657", "Q344", 
            "Q27501", "Q27502", "Q27503", "Q18805", "Q13028", "Q27272", "Q27271", 
            "Q27269", "Q27270", "Q79", "Q82", "Q27410_1", "Q27410_2", "Q27410_3", 
            "Q27410_4", "Q27410_5", "Q27410_6", "Q27410_7", "Q27410_8", "Q27410_9", 
            "Q27410_10", "Q27410_11", "Q27410_12", "Q27410_13", "Q27410_14", 
            "Q27410_15", "Q27273", "Q27277", "Q27406", "Q27291", "Q3806", 
            "Q27204", "Q27279", "Q27278", "Q27297", "Q27284", "Q27299", "Q27282", 
            "Q27280", "Q27283", "Q27205", "Q27507_1", "Q27507_2", "Q27507_3", 
            "Q27507_4", "Q27507_5", "Q27507_6", "Q27506_1", "Q27506_2", "Q27506_3", 
            "Q27506_4", "Q27506_5", "Q27506_6", "Q27506_7", "Q27508_1", "Q27508_2", 
            "Q27508_3", "Q27508_4", "Q27508_5", "Q27201", "Q1865", "Q27192", 
            "Q27206", "Q27207", "Q27208", "Q27286", "Q27358", "Q27359", "Q27302_1", 
            "Q27302_2", "Q27302_3", "Q27302_4", "Q27302_5", "Q27302_6", "Q27302_7", 
            "Q27302_8", "Q27302_9", "Q27302_10", "Q27302_11", "Q27302_12", 
            "Q27302_13", "Q27302_14", "Q20503", "Q27407", "Q27301", "Q434", 
            "Q592", "Q1432", "Q441", "Q368", "Q897", "Q374", "Q1066", "Q802", 
            "Q804", "Q1671", "Q6000", "Q371", "Q572", "Q1308", "Q27509", 
            "Q27510_1", "Q27510_2", "Q27510_3", "Q27510_4", "Q27510_5", "Q27510_6", 
            "Q27510_7", "Q27510_8", "Q27510_9", "Q27510_10", "Q27510_11", 
            "Q27510_12", "Q27510_13", "Q27510_14", "Q79.1", "Q79.2", "BMI", 
            "Q27272.NEW", "Q27271.NEW", "Q13028.NEW", "Q27406.CS", "Q27406.CS.NEW", 
            "Q18805.NEW", "Q1432.T3", "BMI.CS", "Q1432.T3.CONT", "Q344.CS", 
            "白球比", "血淋比", "Q27278.NEW", "Q27278.NEW1", "Q27406.NEW", 
            "Q1432YA")

然后定义一下咱们研究的类型,统一定义为“glm”

family<-"glm"   #你的研究类型

然后在organizedata2函数中放入数据和全部研究变量

out<-organizedata2(data = bc,allVars = allVars,family=family,username=username,token=token)

在这里插入图片描述
咱们可以看到函数报错了,主要是Q27410_13这个变量只有一个类型,属于不合格的变量需要删掉

在这里插入图片描述
所以咱们要在allVars中删除函数报错,不合格的变量,直到没有报错位置。
有的人可能会说,变量太多了,自己一个个删太麻烦了。函数还提供了一个探索模式

out<-organizedata2(data = bc,allVars = allVars,family=family,username=username,token=token,explore = T)

在这里插入图片描述
上图函数提示上面的变量都被删除了。咱们再out中提出整理好的数据,所有变量和分类变量

data<-out[["data"]]
fvars<-out[["factorvarout"]]
allVars<-out[["allVars"]]

整理好数据以后就可以进一步分析,假设咱们的研究变量、观察变量和模型如下

x<-"Q1432"    #你研究的变量
y<-"Q3806"    #你的结局变量
family<-"glm"   #你的研究类型

这个时候我想先挖掘一下数据,看看哪些变量和Y关联

var<-allVars
tb2<-scitb2(data=data,x=var,y=y,family = family,username=username,token=token)

在这里插入图片描述

小于0.05的变量都是和结局有关联的,咱们来看下咱们关心的变量"Q1432"和结局的情况

在这里插入图片描述
咱们发现"Q1432"和结局并无关联,是不是这个变量就没有意义了呢?别急着下结论,咱们来进行更加深度的交互效应挖掘,其实就是看各个亚组之间,"Q1432"和结局和结局的关系分层这里放入所有的交互变量就行

Interaction<-fvars
tb5.a<-scitb5a(data=data,x=x,y=y,Interaction=Interaction,cov = cov3,
               family=family,username=username,token=token)

在这里插入图片描述

做了交互效应分析以后,咱们发现两个问题,虽然"Q1432"和结局并无关联,但是再Q27278这个亚组,当Q27278等于0的时候,"Q1432"和结局是线性相关的,理论上有一个亚组相关就可以写一篇文章。
为什么会这样,举个简单的例子,假设你要研究尿酸和痛经的关系?我们知道男性不可能痛经的,但是男性喝酒可能尿酸又高,你的数据中要是男性过多的化就会对结果造成影响,因此,性别就是一个混杂因素,性别分层以后就能得到女性尿酸和痛经的关系,等于是个消除混杂的处理。

交互效应中深度挖掘数据关联通常有两种情况:

**1.**在观察变量和结局没有关联,亚组却发现了有关联意义(咱们数据的情况)

**2.**在观察变量和结局有关联,亚组中却发现关联明显减弱了,拮抗效应,交互P值小于0.05

第二种情况我拿个文章举例说明

在这里插入图片描述

空腹血糖浓度之间的纵向关联中国高血压成人首次卒中:叶酸的影响干预

这篇文章说的是血糖浓度越高,脑梗死发生率越高

在这里插入图片描述
但是使用叶酸以后,血糖高的患者,脑梗风险明显下降

在这里插入图片描述
表明叶酸是保护因素,其实做法很简单,就是把是否使用叶酸做个分类变量,然后做个交互效应分析而已。写法可以参照这篇文章。

我还想说的是再亚组分段中,咱们把Q1432也做了分段,看到再2这个2亚组中也是有关联的

在这里插入图片描述
表明有可能Q1432有一段是有线性关联的,咱们可以通过ggmgcv函数来观察

library(ggscitable)
out2<-ggmgcv(data = data,x="Q1432",y="Q3806",family = "gaussian",username=username,token=token)

在这里插入图片描述
最后发现Q1432其实和结局是非线性关联,当Q1432大于120左右,Q1432和结局是线性关联。具体分析还是要通过分段和阈值分析。

最后展望一下

Sctb2和scitb5函数都是线性关系的判断,将来会编写一个图形化判断非线性数据关系的函数

看文字不明白的还有视频介绍

R语言使用scitable包深度挖掘一个陌生数据库

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

神经网络|(十五)|霍普菲尔德神经网络-Storkey 训练

【1】引言 前序学习进程中&#xff0c;对霍普菲尔德神经网络有了初步认识&#xff0c;使用Hebbian方法测试了霍普菲尔德神经网络算法。相关学习文章链接为&#xff1a; 神经网络|(十四)|霍普菲尔德神经网络-CSDN博客 在此基础上&#xff0c;尝试探索使用Storkey方法对霍普菲…

算法006——和为S 的两个数

力扣——查找总价格为目标值的两个商品点击跳转 注意题目中的关键信息升序 我们利用双指针&#xff0c;不管 target 是多少&#xff0c;让一个指针指向最小值&#xff0c;让一个指针指向最大 那么&#xff0c;共有三种情况 我们首先遇到的是第二种情况 sum < target left …

【推荐项目】039-酒店预定系统

039-酒店预定系统 介绍 Java ssm 酒店预定管理系统 针对您提出的酒店预定系统&#xff0c;以下是一个基于SSM&#xff08;Spring Spring MVC MyBatis&#xff09;框架与JSP技术的功能结构整理&#xff0c;该系统分为管理端与用户端两大模块&#xff1a; 一、管理端功能 个…

从0开始,手搓Tomcat

一、什么是Tomcat Tomcat 是一款开源的、轻量级的 Web 服务器&#xff0c;它不仅能够提供 HTTP 服务&#xff0c;还能够运行 Java Servlet 和 JavaServer Pages&#xff08;JSP&#xff09;。对于许多开发者来说&#xff0c;理解 Tomcat 的目录结构以及如何在该结构中组织应用…

Ubuntu虚拟机中使用QEMU搭建ARM64环境

Ubuntu虚拟机中使用QEMU搭建ARM64环境 通过本实验学习如何编译一个 ARM64 版本的内核 image&#xff0c;并且在QEMU 上运行起来。 文章目录 Ubuntu虚拟机中使用QEMU搭建ARM64环境一、安装aarch64交叉编译工具二、安装QEMU三、制作根文件系统1、根文件系统简介2、BusyBox构建根…

java 重点知识 — JVM存储模块与类加载器

1 jvm主要模块 方法区 存储了由类加载器从.class文件中解析的类的元数据&#xff08;类型信息、域信息、方法信息&#xff09;及运行时常量池&#xff08;引用符号及字面量&#xff09;。 所有线程共享&#xff1b;内存不要求连续&#xff0c;可扩展&#xff0c;可能发生垃圾回…

Windows 如何开启和使用FTP服务

在Windows 系统开启FTP的服务方式有很多种&#xff0c;最快速的就是使用Windows自身的FTP服务了。 Windows 搭建FTP服务的方式 在Windows 中搭建FTP的方式有很多种&#xff0c;有商用收费的&#xff0c;也有开源免费的&#xff0c;除此之外&#xff0c; Windows本身也内置了F…

ASP.NET Core 6 MVC 文件上传

概述 应用程序中的文件上传是一项功能&#xff0c;用户可以使用该功能将用户本地系统或网络上的文件上传到 Web 应用程序。Web 应用程序将处理该文件&#xff0c;然后根据需要对文件进行一些验证&#xff0c;最后根据要求将该文件存储在系统中配置的用于保存文件的存储中&#…

计算机毕业设计SpringBoot+Vue.js制造装备物联及生产管理ERP系统(源码+文档+PPT+讲解)

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…

yoloV5训练visDrone2019-Det无人机视觉下目标检测

一、visDrone2019数据集详解 visDrone2019数据集是无人机视角下最具挑战性的目标检测基准数据集之一&#xff0c;由天津大学机器学习与数据挖掘实验室联合其他研究机构共同构建。该数据集采集自中国14个不同城市&#xff0c;覆盖复杂城市场景、交通枢纽、密集人群等多种环境。…

Unity开发——CanvasGroup组件介绍和应用

CanvasGroup是Unity中用于控制UI的透明度、交互性和渲染顺序的组件。 一、常用属性的解释 1、alpha&#xff1a;控制UI的透明度 类型&#xff1a;float&#xff0c;0.0 ~1.0&#xff0c; 其中 0.0 完全透明&#xff0c;1.0 完全不透明。 通过调整alpha值可以实现UI的淡入淡…

C语言学习笔记-进阶(7)字符串函数3

1. strstr的使用和模拟实现 char * strstr ( const char * str1, const char * str2); Returns a pointer to the first occurrence of str2 in str1, or a null pointer if str2 is not part of str1. &#xff08;函数返回字符串str2在字符串str1中第⼀次出现的位置&#x…

如何利用数字校园平台提升职业竞争力

现在我们来探讨如何借助数字校园平台来增强自身的职业竞争力。当今之时代&#xff0c;技术与数据堪称热门领域&#xff0c;略懂编程语言及数据分析&#xff0c;于求职之际&#xff0c;实能增添诸多优势&#xff01; 首先&#xff0c;咱们得说说编程语言。现在很多学校都有提供在…

使用 Arduino 的 WiFi 控制机器人

使用 Arduino 的 WiFi 控制机器人 这次我们将使用 Arduino 和 Blynk 应用程序制作一个 Wi-Fi 控制的机器人。这款基于 Arduino 的机器人可以使用任何支持 Wi-Fi 的 Android 智能手机进行无线控制。 为了演示 Wi-Fi 控制机器人,我们使用了一个名为“Blynk”的 Android 移动应…

动态ip和静态ip适用于哪个场景?有何区别

在数字化浪潮席卷全球的今天&#xff0c;IP地址作为网络世界的“门牌号”&#xff0c;其重要性不言而喻。然而&#xff0c;面对动态IP与静态IP这两种截然不同的IP分配方式&#xff0c;许多用户往往感到困惑&#xff1a;它们究竟有何区别&#xff1f;又分别适用于哪些场景呢&…

求最大公约数【C/C++】

大家好啊&#xff0c;欢迎来到本博客( •̀ ω •́ )✧&#xff0c;我将带领大家详细的了解最大公约数的思想与解法。 一、什么是公约数 公约数&#xff0c;也称为公因数&#xff0c;是指两个或多个整数共有的因数。具体来说&#xff0c;如果一个整数能被两个或多个整数整除&…

conda 配置新环境时package will be install 和 package will be download 的区别

install 和 download 的区别 package will be downloaded下的包&#xff1a;这一类显示的是需要从 conda 仓库或其他指定的源下载的软件包。这些软件包通常是 .tar.bz2、.tar.xz 或 .conda 格式的压缩包。这些包会被下载到本地缓存目录&#xff08;通常是 ~/.conda 或 C:\Users…

【2025小黑课堂】计算机二级WPS精选系列20G内容(可下载:真题+预测卷+软件+选择题)

2025年3月全国计算机等级考试即将于3月29日至31日举行。为了帮助广大考生高效备考&#xff0c;小编特意收集并整理了最新版&#xff08;备考2025年3月&#xff09;的小黑课堂计算机二级WPS 电脑题库软件&#xff0c;助力考生在考试中游刃有余&#xff0c;轻松通关&#xff01; …

C++编写Redis客户端

目录 安装redis-plus-plus库 ​编辑 编译Credis客户端 redis的通用命令使用 get/set exists del keys expire /ttl type string类型核心操作 set和get set带有超时时间 set带有NX string带有XX mset mget getrange和setrange incr和decr list类型核心操作…

①EtherCAT转Modbus485RTU网关多路同步高速采集无需编程串口服务器

EtherCAT转Modbus485RTU网关多路同步高速采集无需编程串口服务器https://item.taobao.com/item.htm?ftt&id798036415719 型号 1路总线EC网关 MS-A2-1011 2路总线EC网关 MS-A2-1021 4路总线EC网关 MS-A2-1041 EtherCAT 串口网关 EtherCAT 转 RS485 技术规格 …