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

news2024/9/23 9:29:07

摘要

中介分析在流行病学和临床试验中越来越受到关注。在现有的中介分析方法中,流行的联合显着性(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​​​​​​

 

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

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

相关文章

一站式电商数据采集API接口-支持多平台采集-全面提升数据采集效率!

电商数据采集API接口包含&#xff1a;淘宝采集&#xff0c;天猫采集&#xff0c;拼多多采集&#xff0c;同行店采集&#xff0c;蓝海店铺采集&#xff0c;批量整店采集&#xff0c;蓝海监控上新&#xff0c;首销尾销&#xff0c;潜力款选品&#xff0c;上新品采集&#xff0c;高…

RNA-Seq 笔记 [4]

***********************该笔记为初学者笔记&#xff0c;仅供个人参考谨慎搬运代码****************************** samtools 排序压缩和 featureCounts 生成基因计数表 SAM文件和BAM文件 1.SAM格式&#xff1a;是一种通用的比对格式&#xff0c;用来存储reads到参考序列的比…

【蓝牙协议栈】【BR/EDR】【AVDTP】音视频分布传输协议

1. AVDTP概念 AVDTP即 AUDIO/VIDEO DISTRIBUTION TRANSPORT PROTOCOL&#xff08;音视频分配传输协议&#xff09;&#xff0c;主要负责 A/V stream的协商、建立及传输程序&#xff0c;还指定了设备之前传输A/V stream的消息格式. AVDTP的传输机制和消息格式是以 RTP为基础的。…

Redis 之三:Redis 的发布订阅(pub/sub)

概念介绍 Redis 发布订阅 (pub/sub) 是一种消息通信模式&#xff0c;它允许客户端之间进行异步的消息传递 Redis 客户端可以订阅任意数量的频道。 模型中的角色 在该模型中&#xff0c;有三种角色&#xff1a; 发布者&#xff08;Publisher&#xff09;&#xff1a;负责发送信…

vue2 element 实现表格点击详情,返回时保留查询参数

先直观一点&#xff0c;上图 列表共5条数据&#xff0c;准备输入Author过滤条件进行查询 进入查看详情页&#xff0c;就随便搞了个按钮 啥都没调啦 点击返回后 一开始准备用vuex做这个功能&#xff0c;后来放弃了&#xff0c;想到直接用路由去做可能也不错。有时间再整一套…

【VTKExamples::PolyData】第四十四期 ProcurstesAlignmentFilter

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享VTK样例ProcurstesAlignmentFilter,并解析接口vtkProcurstesAlignmentFilter,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^…

jupyter 一键快捷启动方法研究

1.效果 首先打开dat 文件&#xff0c;同意赋予管理员 输入序号1 成功启动 2.Bat代码 %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&e…

mac使用sequl的报错说明

出现下图错误&#xff0c;则到此地址下载test-builds版本 Test Builds 使用 sequel pro 的时候出现了 SequelPro encountered an unexpected error 表现为&#xff1a;测试通过&#xff0c;链接就卡住报错的问题。 解决办法 这是软件的问题&#xff0c;下载使用这个 TEST…

大模型理论基础(so-large-lm)课程笔记!

Datawhale干货 作者&#xff1a;辣条&#xff0c;Datawhale优秀学习者 前 言 在当前信息时代&#xff0c;大型语言模型&#xff08;Large Language Models&#xff0c;LLMs&#xff09;的发展速度和影响力日益显著。随着技术进步&#xff0c;我们见证了从基本的Transformer架构…

计算机视觉基础知识(二)---数字图像

像素 像素是分辨率的单位;构成位图图像的最基本单元;每个像素都有自己的颜色; 图像分辨率 单位英寸内的像素点数;单位为PPI(Pixels Per Inch),为像素每英寸;PPI表示每英寸对角线上所拥有的像素数目:,x:长度像素数目,y:宽度像素数目,Z:屏幕大小;屏幕尺寸(大小)指的是对角线长…

程序媛的mac修炼手册-- Node.js入门篇

最近因为参与一个微信小程序的开发&#xff0c;开始摸索JavaScript。期间&#xff0c;需要基于Node.js安装微信开发工具的依赖项&#xff0c;所以又顺带学习了Node.js的包管理工具npm&#xff08;Node Package Manager&#xff09;。不过&#xff0c;之前看到国外的全栈大佬​​…

electron+vue3全家桶+vite项目搭建【29】封装窗口工具类【3】控制窗口定向移动

文章目录 引入实现效果思路声明通用的定位对象主进程模块渲染进程测试效果 引入 demo项目地址 窗口工具类系列文章&#xff1a; 封装窗口工具类【1】雏形 封装窗口工具类【2】窗口组&#xff0c;维护窗口关系 很多时候&#xff0c;我们想直接让某个窗口移动到边角&#xff0c…

MySQL之索引详解

华子目录 索引概述优缺点 索引的原理索引的设计原则索引结构B-tree&#xff08;多路平衡查找树&#xff09;BtreeHash 为什么InnoDB存储引擎选择Btree&#xff1f;索引分类聚集索引选取规则 单列索引和多列索引前缀索引创建索引1.创建表时创建索引2.在已经存在的表上创建索引3.…

funasr VAD语音端点检测;sherpa VAD+STT识别

1、VAD 语音端点检测(funasr) Voice Activity Detection 语音活性检测(VAD)也被称为语音端点检测,基本原理是判断一个区间内的音频(区间被称为一个“语音帧”),是有效语音,还是无效语音。通过连续的检测多帧,就能判断出语音的“开头”(从无效到有效)和“结尾”(从…

【springboot】乡镇卫生院、二甲医院云HIS运维平台源码

目录 云HIS运营管理 ​编辑电子病历主模块&#xff1a;包括门诊电子病历、住院电子病历等子模块 &#xff08;1&#xff09;门诊电子病历功能简介 &#xff08;2&#xff09;住院电子病历功能简介 ▶患者列表主模块&#xff1a;包括患者信息子模块 &#xff08;1&#xf…

熔断降级 spring事务

如果有事务处理&#xff0c;会先把事务的自动提交给关闭

《一》在Vue中搭建Three.js环境(超详细、保姆级),创建场景、相机、渲染器

目录 Three.js简介创建vue项目引入Three.js实际操作环节文件目录创建初始化场景、相机 Three.js简介 Three.js 是一款基于 WebGL的 JavaScript 3D 库&#xff0c;它封装了 WebGL API&#xff0c;为开发者提供了简单易用的 API 来在 Web 浏览器中展示 3D 图形。Three.js 提供了…

青岛琛蓝健康集团正式发布多项科研合作项目

青岛琛蓝健康集团正式发布多项科研合作项目 科技创新是推动琛蓝健康产业集团持续发展的原动力。 一直以来&#xff0c;琛蓝健康集团高度重视科研合作&#xff0c;与众多专家团队和科研机构达成战略合作关系&#xff0c;深入实施产学研合作模式&#xff0c;成立多个协同创新中心…

经典思路!人参叶际微生物如何发8分文章?

中国中医科学院中药研究所在《Environmental Microbiome》期刊上(IF7.9)发表了关于叶际真菌微生态网络的文章&#xff0c;该研究通过对ITS测序结果和环境因子测定结果以及皂苷含量测定结果进行生信分析&#xff0c;提出了维持微生态网络的稳定性策略和影响皂苷含量的因素。 期刊…

【推荐算法系列十七】:GBDT+LR 排序算法

排序算法经典中的经典 参考 推荐系统之GBDTLR 极客时间 手把手带你搭建推荐系统 课程 逻辑回归&#xff08;LR&#xff09;模型 逻辑回归&#xff08;LR,Logistic Regression&#xff09;是一种传统机器学习分类模型&#xff0c;也是一种比较重要的非线性回归模型&#xff…