当前位置: 首页 > article >正文

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包深度挖掘一个陌生数据库

相关文章:

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

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

Kali WebDAV 客户端工具——Cadaver 与 Davtest

1. 工具简介 在 WebDAV 服务器管理和安全测试过程中&#xff0c;Cadaver 和 Davtest 是两款常用的命令行工具。 Cadaver 是一个 Unix/Linux 命令行 WebDAV 客户端&#xff0c;主要用于远程文件管理&#xff0c;支持文件上传、下载、移动、复制、删除等操作。Davtest 则是一款…...

QSplashScreen启动画面开发详解

QSplashScreen启动画面 1. 基本概念2. 使用场景3. 基本操作与代码示例3.1 创建简单的启动画面3.2 动态更新启动画面信息4. 自定义启动画面样式4.1 自定义文字和背景5. 高级应用:结合多线程加载6. 注意事项7. 总结其他QT文章推荐QSplashScreen 是 Qt 框架中用于在应用程序启动时…...

线性代数笔记28--奇异值分解(SVD)

1. 奇异值分解 假设矩阵 A A A有 m m m行 n n n列 奇异值分解就是在 A A A的行向量上选取若干对标准正交基&#xff0c;对它作 A A A矩阵变化并投射到了 A A A的列空间上的正交基的若干倍数。 A v → u → σ u → ∈ R m v → ∈ R n A\overrightarrow{v}\overrightarrow{u…...

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

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

面试准备——云相册项目(1)基础

项目概述 云相册项目旨在为用户提供便捷的照片存储、管理和访问服务。通过客户端与服务器的配合&#xff0c;实现照片的上传、下载以及一些基本的命令交互功能&#xff0c;方便用户在不同设备上随时查看和管理自己的相册。 技术要点 编程语言与环境&#xff1a;使用 C 语言开…...

Redis数据结构深度解析:从String到Stream的奇幻之旅(一)

Redis系列文章 《半小时掌握Redis核心操作&#xff1a;从零开始的实战指南》-CSDN博客 Redis数据结构深度解析&#xff1a;从String到Stream的奇幻之旅&#xff08;一&#xff09;-CSDN博客 Redis数据结构深度解析&#xff1a;从String到Stream的奇幻之旅&#xff08;二&…...

Linux - 网络基础(应用层,传输层)

一、应用层 1&#xff09;发送接收流程 1. 发送文件 write 函数发送数据到 TCP 套接字时&#xff0c;内容不一定会立即通过网络发送出去。这是因为网络通信涉及多个层次的缓冲和处理&#xff0c;TCP 是一个面向连接的协议&#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…...

Kotlin字符串操作在Android开发中的应用示例

Kotlin字符串操作在Android开发中的应用示例 引言 在Android开发中&#xff0c;Kotlin已经成为主流的编程语言&#xff0c;它提供了许多便捷的字符串操作功能。本文将结合一个具体的Kotlin示例程序&#xff0c;详细介绍Kotlin中字符串的创建、格式化和使用方法。 示例代码 以…...

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

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

迷你世界脚本自定义UI接口:Customui

自定义UI接口&#xff1a;Customui 彼得兔 更新时间: 2024-11-07 15:12:42 具体函数名及描述如下:&#xff08;除前两个&#xff0c;其余的目前只能在UI编辑器内部的脚本使用&#xff09; 序号 函数名 函数描述 1 openUIView(...) 打开一个UI界面&#xff08;注意…...

江科大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;涨薪更快 网络安全等级保护五个保护等级 五个保护等级 受侵害的客体 对客体的侵害程度 一般损害 严重损害 特别严重损害 公民、法人和其他组织的合法权益 第一级 第二级 …...

服务器数据恢复—raid5阵列中硬盘出现坏道的数据恢复流程

服务器故障情况&#xff1a; 某公司一台服务器中有一组多块硬盘组成的磁盘阵列。磁盘阵列中有2块硬盘出现故障离线&#xff0c;服务器崩溃&#xff0c;上层数据丢失。 硬件检测&#xff1a; 硬件工程师对客户服务器内的所有硬盘进行物理故障检测&#xff0c;最终确认这2块硬盘…...

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; 安装时建议选择自定…...

最好用的多语言插件Google Language Translator

Google Language Translator 是一款用于 WordPress 的翻译插件&#xff0c;可以帮助网站快速实现多语言支持。以下是关于该插件的详细介绍&#xff1a; 功能特点 免费与付费版本 免费版本使用 Google Translate 的短语基础机器翻译&#xff0c;能够快速将网站内容翻译成多种…...