高维中介数据: 联合显着性(JS)检验法

摘要

中介分析在流行病学和临床试验中越来越受到关注。在现有的中介分析方法中,流行的联合显着性(JS)检验会产生过于保守的 I 类错误率,因此功效较低。但是,如果在使用 JS 测试高维中介假设时,可以准确控制族错误率 (FWER) 和错误发现率 (FDR)。分析的核心是基于估计三个分量零假设的比例并推导零 p 值的相应混合分布。

一言以蔽之:计算高维中介假设的校正后的p值

JS-混合方法

新提出的JS-混合方法(joint significance (JS) test) 通过估计三种类型组合零假设的比例来解决JS均匀方法在高维中介假设测试中的过度保守问题。这种方法衍生出控制家庭错误率(FWER)或假发现率(FDR)的显著性规则。通过理论证明、广泛的模拟实验和两个数据例子,JS-混合方法被证明是稳健的,适用于稀疏和密集替代假设,并且在FWER和FDR的控制上比JS-均匀方法提供了更令人满意的结果。特别是,当使用有限样本校正的JS-混合方法时,与基于渐近混合零分布的方法相比,其经验FWER更接近目标的0.05,从而改善了控制效果。

种类型组合零假设的比例

通过估计与三种类型(H00, H01, H10)相关的零假设在所有J个假设中的比例,得到关于这些零假设在数据集中的相对频率的信息。这些估计对于理解和控制假阳性率(FDR)以及在假设检验中区分真正和虚假发现至关重要。π01, π10, 和 π00 分别表示三种类型组合零假设(即,H01, H10, 和 H00)在J个假设中的比例。通过最大化似然函数分别得到αj 和 βj 的估计p1j 和 p2j,由于模型允许它们的似然性可以分解,所以这些估计是独立的,这有助于更准确地估计pmax,j 在零假设H0j中的分布

实现方法

以DNA甲基化在癌症病因中的作用为例,介绍了两个前列腺癌研究案例。以供自学。

浏览关键函数

安装、导入包

# 安装hdmt包
install.packages("HDMT")
# 加载hdmt包
library(HDMT)

导入数据

数据格式:数据集是一个矩阵,其中包含候选中介变量的两列 p 值。第 1 列包含用于测试暴露是否与中介相关的 p 值 (alpha!=0)。第 2 列包含用于测试中介变量是否与暴露调整后的结果相关的 p 值 (beta!=0),需要先使用各类中介方法进行估计。

# 读取数据
data(snp_input)
# 查看数据
head(snp_input)
#         [,1]        [,2]
# [1,] 0.1056981 0.253803463
# [2,] 0.9986436 0.862830855
# [3,] 0.1006569 0.726600653
# [4,] 0.1731411 0.327851970
# [5,] 0.8900695 0.001496449
# [6,] 0.8156905 0.087064991
# 查看数据结构
str(snp_input)
#  num [1:69602, 1:2] 0.106 0.999 0.101 0.173 0.89 ...
input_pvalues <- snp_input


# 从输入数据中随机抽取10%的数据【节省时间】
input_pvalues <- input_pvalues[sample(1:nrow(input_pvalues),size=ceiling(nrow(input_pvalues)/10)),]
str(input_pvalues)
# num [1:6961, 1:2] 0.37146 0.00373 0.56406 0.4913 0.78594 ... 

估计三个分量零值比例备用

nullprop <- null_estimation(input_pvalues)
# $alpha10
# [1] 0.06608246
# 
# $alpha01
# [1] 0.4640138
# 
# $alpha00
# [1] 0.4692812
# 
# $alpha1
# [1] 0.933295
# 
# $alpha2
# [1] 0.5353637

计算FDR校正后的p值

# 使用三个分量零值比例,基于所提出的联合显着性混合零方法(JS-mixture)计算估计的逐点 FDR
fdr <- fdr_est(nullprop$alpha00,nullprop$alpha01,nullprop$alpha10, 
               nullprop$alpha1,nullprop$alpha2,input_pvalues,exact=0)
str(fdr)
# num [1:6961] 0.954 0.966 0.957 0.956 0.917 ...

结果解读:如果一个p值对应的FDR小于0.05,那么这个结果被认为是在FDR控制下的显著发现,表明存在关联

 计算FWE校正后的p值的cutoff

# 使用估计的混合零分布计算 p-max 的 FWER 截止值cutoff
fwercut0 <- fwer_est(nullprop$alpha10,nullprop$alpha01,nullprop$alpha00,nullprop$alpha1, nullprop$alpha2,input_pvalues,alpha=0.05,exact=0)   # exact= 0:不估计CDF的近似值
fwercut0
# [1] 1.491624e-05

fwercut1 <- fwer_est(nullprop$alpha10,nullprop$alpha01,nullprop$alpha00,nullprop$alpha1, nullprop$alpha2,input_pvalues,alpha=0.05,exact=1) # exact = 1:非参数估计 CDF 的精确方法
fwercut1
# [1] 6.187122e-05

结果解读:fwercut0 是使用估计的混合零分布计算的 p-max 的 FWER 截止值,其中 exact=0 表示使用了不估计累积分布函数(CDF)的近似方法。 在显著性水平 alpha=0.05 下,为了控制家庭错误率(FWER),当候选中介变量的p值小于或等于这个值(即1.354997e-05)时,我们将认为关联性检测达到统计显著性。同理解读fwercut1

作图

用途:观察经过JS 后,校正后的p值被“拉高”了,即更容易达到统计学显著,提高了功效

# 通过上面计算的三个分量零值比例,并使用近似或精确方法计算 pmax 的估计混合零分布分位数--------
pnull <- adjust_quantile(nullprop$alpha00,nullprop$alpha01,nullprop$alpha10,nullprop$alpha1, nullprop$alpha2,input_pvalues,exact=0) # exact=0,推导混合零分布时,不估计CDF的近似方法
str(pnull)
# num [1:6961] 0.000298 0.000596 0.000894 0.001192 0.001489 ...


# 使用预期分位数绘制 p-max 的校正分位数-分位数图---------
pmax <- apply(input_pvalues,1,max) # 计算每行的最大值
pnull1 <- adjust_quantile(nullprop$alpha10,nullprop$alpha01,nullprop$alpha00, nullprop$alpha1,nullprop$alpha2,input_pvalues,exact=1) # exact=1,在推导混合零分布时,非参数估计 CDF 的精确方法

correct_qqplot(pmax,pnull1)  #如下图展示

参考文献

A Multiple-Testing Procedure for High-Dimensional Mediation Hypotheses: Journal of the American Statistical Association: Vol 117 , No 537 - Get Access (tandfonline.com)icon-default.png?t=N7T8https://www.tandfonline.com/doi/full/10.1080/01621459.2020.1765785​​​​​​

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

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

相关文章

表达式和语句

本文参考C Primer Plus进行C语言学习 文章目录 表达式语句 副作用和序列点复合语句&#xff08;块&#xff09;类型转换 1.表达式 表达式由运算符和运算对象组成。下面是一些表达式&#xff1a; 4 -6 421 a*&#xff08;bc/d&#xff09;/20 q5*2 xq%3 q>3 每个表达式都有一…

基于带时间窗口的电动汽车路由问题的精英对立学习的多群PSO(2022)

英文&#xff1a;Multi-swarm PSO based on Elite Opposite Learning on Electric Vehicle Routing Problem with Time Window 摘要&#xff1a; 带时间窗口的电动汽车路由问题&#xff08;EVRPTW&#xff09;是交通领域的一个新问题&#xff0c;用传统的精确求解方法很难解决…

vue3.0源码解析之数据代理Proxy

前言 多年前刚转前端的时候&#xff0c;对频繁的拼接页面元素深恶痛绝&#xff0c;当时是通过封装字符串模版来处理页面的。之后又陆续发现&#xff0c;数据变化后需要频繁的修改dom节点来操作页面&#xff0c;便不得不自己写很多更新的代码&#xff0c;直到出现了vue和react、…

【排序】详解堆排序

一、思想 堆排序是一种基于比较的排序算法&#xff0c;且使用了堆的数据结构来辅助进行排序。其思想是利用堆的特性&#xff0c;即在每个节点都保证是最大&#xff08;大顶堆&#xff09;或者最小&#xff08;小顶堆&#xff09;的关键码。具体原理和步骤如下&#xff1a; 构…

基于SpringBoot的论坛系统(附项目源码+论文)

摘要 如今的时代&#xff0c;是有史以来最好的时代&#xff0c;随着计算机的发展到现在的移动终端的发展&#xff0c;国内目前信息技术已经在世界上遥遥领先&#xff0c;让人们感觉到处于信息大爆炸的社会。信息时代的信息处理肯定不能用之前的手工处理这样的解决方法&#xf…

最值得入手的五款骨传导耳机,六大专业的选购技巧

亲爱的小伙伴们&#xff0c;你们是否曾因长时间戴着耳机而感到耳朵不适&#xff0c;比如耳朵闷痛、发痒&#xff0c;甚至出现异味&#xff1f;现在有一种耳机可以帮你解决这些问题&#xff0c;它就是骨传导耳机。这种耳机的设计避免了传统入耳式耳机可能带来的堵塞感和细菌滋生…

【prompt五】CoCoOP:Conditional Prompt Learning for Vision-Language Models

motivation 随着像CLIP这样强大的预训练视觉语言模型的兴起,研究如何使这些模型适应下游数据集变得至关重要。最近提出的一种名为上下文优化(CoOp)的方法将提示学习(nlp的最新趋势)的概念引入视觉领域,以适应预训练的视觉语言模型。具体来说,CoOp将提示中的上下文单词转换为…

Golang 程序启动原理详解

一.编译 go源代码首先要通过 go build 编译为可执行文件,然后去机器上直接执行的&#xff0c;在 linux 平台上为 ELF 格式的可执行文件&#xff0c;linux 能直接执行这个文件,而编译阶段会经过编译器、汇编器、链接器三个过程最终生成可执行文件 编译器&#xff1a;*.go 源码通…

数字逻辑与计算机组成

冯诺依曼计算机 计算机结构 计算机特点 1.采用二进制 2.程序存储 2.由五大部件组成计算机系统&#xff1a;运算器、存储器、控制器、输入设备和输出设备 计算机硬件系统的层次 中央处理器&#xff08;CPU&#xff09;&#xff1a;运算器 控制器 计算机主机&#xff1a;…

【韩国留学】四大生活技能 学起来!柯桥留学中介韩语学习

如何高效拿学分 在韩国大学&#xff0c;学分是评价学生学习成果的重要标准。要想高效拿学分&#xff0c;首先要制定合理的学习计划。明确每学期需要修的课程&#xff0c;并提前预习&#xff0c;了解课程重点和难点。 其次&#xff0c;要积极参与课堂讨论&#xff0c;这不仅能提…

社科院与杜兰大学金融管理硕士——让我们的读研梦想,与春天一同醒来

随着春天的到来&#xff0c;万物复苏&#xff0c;生机盎然。在这个充满希望的季节里&#xff0c;你的读研梦想觉醒了吗&#xff1f;社科院与杜兰大学金融管理硕士项目为你提供梦想的种子&#xff0c;它将在你心中生根发芽&#xff0c;助你在学术殿堂里收获丰硕的果实。 中国社会…

第七个程序:两个字符串连接后计算长度

实验步骤; 第一步&#xff1a;新建项目 第二步&#xff1a;程序编写 第三步&#xff1a;运行结果 Labview一共7个字节&#xff0c;长度为7&#xff0c;一个字母一个字节 汉字为2个字节&#xff0c;图一为4&#xff0c;图二为8 所以结果分别为11和15 视频教学&#xff1a; 字…

javaWebssh题库管理系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 java ssh题库管理系统是一套完善的web设计系统&#xff08;系统采用ssh框架进行设计开发&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Mye…

U410866 统计分数

本题为本人原创&#xff0c;请勿抄袭。 难度&#xff1a;普及- 题目背景 为了统计学生们的分数和排名&#xff0c;老师们翻来覆去睡不着觉。请你为老师编写一个这样的程序。 题目描述 这是一题将结构体和排序结合在一起的题。 输入格式 输入&#xff1a; 第一行&…

javascript操作BOM的方法

目录 1.window.alert() 2.window.confirm() 3.window.prompt() 4.window.location() 5.window.navigator() 6.window.screen() 7.window.history() 8.window.setTimeout() 和 window.clearTimeout() 9.window.setInterval() 和 window.clearInterval() BOM&#xff08…

Unity 轮转图, 惯性, 自动回正, 点击选择

简单的实现 2D 以及 3D 的轮转图, 类似于 Web 中无限循环的轮播图那样. 文中所有代码均已同步至 github.com/SlimeNull/UnityTests 3D 轮转图: Assets/Scripts/Scenes/CarouselTestScene/Carousel.cs2D 轮转图: Assets/Scripts/Scenes/CarouselTestScene/UICarousel.cs 主要逻…

【学习记录】C++面向对象高级编程【更新中】

C面向对象高级编程 1 inline-内联函数1.1 什么是内联函数&#xff1f;1.2 为什么需要内联函数&#xff1f; 2 构造函数2.1 构造函数是什么&#xff1f;2.2 为什么需要构造函数&#xff1f;2.3 ctor(构造函数)可以有很多个-overloading重载2.4 ctors放在private区-Singleton 3 参…

Anthropic发布最强大模型Claude 3,实力碾压GPT-4和Gemini!

前言 2024年3月4日&#xff0c;Anthropic 发布了Claude 3新版系列模型&#xff0c;含Haiku、Sonnet 和 Opus三个版本。其中最强大的模型在各种基准测试中均优于OpenAI的GPT-4和Google的 Gemini 1.0 Ultra&#xff0c;已成为大模型领域的新巨头。 大家如果对AI感兴趣&#xff0c…

TensorRT入门:trtexec开发辅助工具的使用

文章目录 一、trtexec简介二、trtexec使用1.trtexec常用参数1. 构建阶段2. 运行阶段 2.基本使用方法1. trtexec最基本的使用方法&#xff0c;读取onnx模型并通过trtexec测试推理性能。2. trtexec解析ONNX文件&#xff0c;使用优化选择构建TensorRT引擎并保存至.plan文件补充&am…

力扣--动态规划64.最小路径和

思路分析&#xff1a; 基本思路&#xff1a; 本算法采用动态规划的思想&#xff0c;通过构建一个额外的二维矢量 dp 来存储每个位置的最小路径和。最终目标是求得右下角位置的最小路径和&#xff0c;即整个网格的最小路径和。 初始化&#xff1a; 初始化矢量的行数和列数&…