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

news2025/4/21 13:55:49

很多新手刚才是总是觉得自己没什么可以写的,自己不知道选什么题材进行分析,使用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包深度挖掘一个陌生数据库

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【记录一下学习】Embedding 与向量数据库

一、向量数据库 向量数据库&#xff08;Vector Database&#xff09;&#xff0c;也叫矢量数据库&#xff0c;主要用来存储和处理向量数据。 在数学中&#xff0c;向量是有大小和方向的量&#xff0c;可以使用带箭头的线段表示&#xff0c;箭头指向即为向量的方向&#xff0c…

【Linux-网络】从逻辑寻址到物理传输:解构IP协议与ARP协议的跨层协作

&#x1f3ac; 个人主页&#xff1a;谁在夜里看海. &#x1f4d6; 个人专栏&#xff1a;《C系列》《Linux系列》《算法系列》 ⛰️ 道阻且长&#xff0c;行则将至 目录 &#x1f4da;前言 &#x1f4d6; IP地址的组成 &#x1f516;IPv4 &#x1f516;IPv6 &#x1f4da…

解锁前端表单数据的秘密旅程:从后端到用户选择!✨

&#x1f604; 解锁前端表单数据的秘密旅程&#xff1a;从后端到用户选择&#xff01;✨ 嘿&#xff0c;技术爱好者们&#xff01;&#x1f44b; 你有没有在开发中遇到过这样的困惑&#xff1a;表单里的数据&#xff08;比如图片附件、识别点 ID&#xff09;从哪儿来的&#x…

【机械视觉】C#+visionPro联合编程———【一、C# + VisionPro 联合编程详解以及如何将visionPro工具加载到winform】

机械视觉与 C# VisionPro 联合编程详解 目录 机械视觉与 C# VisionPro 联合编程详解 概念 应用场景 1. 工业检测与质量控制缺陷检测 2. 定位与机器人引导 3. 识别与分类 4. 复杂流程控制 将visionPro工具加载到winform 环境准备 一、创建winform项目 二、打开窗体…

江科大51单片机笔记【9】DS1302时钟可调时钟(下)

在写代码前&#xff0c;记得把上一节的跳线帽给插回去&#xff0c;不然LCD无法显示 一.DS1302时钟 1.编写DS1302.c文件 &#xff08;1&#xff09;重新对端口定义名字 sbit DS1302_SCLKP3^6; sbit DS1302_IOP3^4; sbit DS1302_CEP3^5;&#xff08;2&#xff09;初始化 因为…

发行思考:全球热销榜的频繁变动

几点杂感&#xff1a; 1、单机游戏销量与在线人数的衰退是剧烈的&#xff0c;有明显的周期性&#xff0c;而在线游戏则稳定很多。 如去年的某明星游戏&#xff0c;最高200多万在线&#xff0c;如今在线人数是48名&#xff0c;3万多。 而近期热门的是MH&#xff0c;在线人数8…

微信小程序接入deepseek

先上效果 话不多说&#xff0c;直接上代码&#xff08;本人用的hbuilder Xuniapp&#xff09; <template><view class"container"><!-- 聊天内容区域 --><scroll-view class"chat-list" scroll-y :scroll-top"scrollTop":…

为解决局域网IP、DNS切换的Windows BAT脚本

一、背景 为解决公司普通人员需要切换IP、DNS的情况&#xff0c;于是搞了个windows下的bat脚本&#xff0c;可以对有线网络、无线网络进行切换设置。 脚本内容 echo off title 多网络接口IP切换工具:menu cls echo echo 请选择要配置的网络接口: echo echo 1. 有线网络&am…

VUE3开发-9、axios前后端跨域问题解决方案

VUE前端解决跨域问题 前端页面需要改写 如果无效&#xff0c;记得重启服务器 后端c#解决跨域问题 前端js取值&#xff0c;后端c#跨域_c# js跨域-CSDN博客

【计算机网络】计算机网络的性能指标——时延、时延带宽积、往返时延、信道利用率

计算机网络的性能指标 导读 大家好&#xff0c;很高兴又和大家见面啦&#xff01;&#xff01;&#xff01; 在上一篇内容中我们介绍了计算机网络的三个性能指标——速率、带宽和吞吐量。用大白话来说就是&#xff1a;网速、最高网速和实时网速。 相信大家看到这三个词应该就…

Kubermetes 部署mysql pod

步骤 1: 创建 PersistentVolume 和 PersistentVolumeClaim 首先为 MySQL 创建一个 PersistentVolume (PV) 和 PersistentVolumeClaim (PVC) 来确保数据的持久性。 mysql-pv.yaml&#xff1a; apiVersion: v1 kind: PersistentVolume metadata:name: mysql-pv-volume spec:cap…

Docker和DockerCompose基础教程及安装教程

Docker的应用场景 Web 应用的自动化打包和发布。自动化测试和持续集成、发布。在服务型环境中部署和调整数据库或其他的后台应用。从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。 CentOS Docker 安装 使用官方安装脚本自动安装 安装命令…

网络安全等级保护—定级

&#x1f345; 点击文末小卡片 &#xff0c;免费获取网络安全全套资料&#xff0c;资料在手&#xff0c;涨薪更快 网络安全等级保护五个保护等级 五个保护等级 受侵害的客体 对客体的侵害程度 一般损害 严重损害 特别严重损害 公民、法人和其他组织的合法权益 第一级 第二级 …

macos 程序 运行

sudo xattr -r -d com.apple.quarantine [/Applications/Name]使用stow 管理配置文件

UVC for USBCamera in Android

基于UVC 协议&#xff0c;完成USBCamera 开发 文章目录 一、目的&#xff1a;二、USBCamera 技术实现方案难点 三、误区&#xff1a;四、基础补充、资源参考架构图了解Camera相关专栏零散知识了解部分相机源码参考&#xff0c;学习API使用&#xff0c;梳理流程&#xff0c;偏应…

Docker 安装 Nacos 2.1.1(单机版)

一、拉取镜像 docker pull nacos/nacos-server:v2.1.1 二、新建数据库 官网上下载 对应版本的 nacos zip 包&#xff0c;在 nacos\conf 目录下有 mysql脚本&#xff1a; 新建一个数据库 nacos_config&#xff0c;在数据库中依次执行 nacos-mysql.sql、1.4.0-ipv6_support-up…

网络安全数据富化 网络数据安全处理规范

本文件规定了网络运营者开展网络数据收集、存储、使用、加工、传输、提供、公开等数据处理的安全 技术与管理要求。 本文件适用于网络运营者规范网络数据处理,以及监管部门、第三方评估机构对网络数据处理进行 监督管理和评估。 部分术语和定义 数据&#xff08;data&#x…

深入理解 C 语言函数的定义

在 C 语言的编程世界里&#xff0c;函数是构建复杂程序的基石。理解函数的定义与运用&#xff0c;对于编写高效、可维护的代码至关重要。​ 函数定义的基本概念​ 函数是一组执行特定任务的代码块。它将一个复杂的问题分解为一个个小的、可管理的部分&#xff0c;提高了代码的…

SQL注入练习场:PHPStudy+SQLI-LABS靶场搭建教程(零基础友好版)

注意&#xff1a;文中涉及演示均为模拟测试&#xff0c;切勿用于真实环境&#xff0c;任何未授权测试都是违法行为&#xff01; 一、环境准备 下载PHPStudy 官网下载地址&#xff1a;https://www.xp.cn/php-study&#xff08;选择Windows版&#xff09; 安装时建议选择自定…

WordPress报502错误问题解决-php-fpm-84.service loaded failed failed LSB: starts php-fpm

文章目录 问题描述问题排查问题解决 问题描述 服务器环境&#xff1a; php&#xff1a;8.4MySQL&#xff1a;8.0Nginx&#xff1a;1.26.2 在访问站点时&#xff0c;一直报502&#xff0c;而两天前还能正常访问。 问题排查 导致502的问题很多&#xff0c;比如站点访问量太大…