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

xQTLs 共定位分析(XQTLbiolinks包)

XQTL 共定位分析

XQTLbiolinks 是一个端到端的生物信息学工具,由深圳湾实验室李磊研究团队开发,用于高效地分析公共或用户定制的个xQTLs数据。该软件提供了一个通过与 xQTLs 共定位分析进行疾病靶基因发现的流程,以检测易感基因和致病变异。

图片

github地址

https://github.com/dingruofan/xQTLbiolinks

0. R包下载与引用

用户可以通过以下代码安装或者引用:

#if (!require("BiocManager", quietly = TRUE)){install.packages("BiocManager")}
#BiocManager::install("SummarizedExperiment") # For windows or linux
#if(!require("devtools")){install.packages("devtools")}
#devtools::install_github("dingruofan/xQTLbiolinks")
library(data.table)
library(xQTLbiolinks)
library(stringr)
library(coloc)

1.数据预处理

使用示例文件(GRCh38 版本基因组)的 GWAS 摘要汇总数据,在大脑 - 小脑中执行共定位分析:

gwasDF <- fread("http://bioinfo.szbl.ac.cn/xQTL_biolinks/xqtl_data/gwasDFsub.txt")
tissueSiteDetail="Brain - Cerebellum"
head(gwasDF)

输入的数据必须要有以下几列,列名可以不一样,但顺序必须相同:

  • 列1. variants,使用rsID(例如“rs11966562”)

  • 列2. chromosome,染色体

  • 列3. position,snp的基因组位置

  • 列4. P-value

  • 列5. MAF,等位基因频率

  • 列6. beta,效应大小

  • 列7. se,标准误

示例使用的是内置的 GTEX 数据,可以使用以下代码查看其中可使用的组织来源 eqtl 数据:

xQTLbiolinks::tissueSiteDetailGTExv8$tissueSiteDetail %>% unique()

2.鉴定哨兵 snps

哨兵 SNP 可以通过使用 xQTLanalyze_getSentinelSnp 及其参数 p-value < 5e-8SNP-to-SNP distance > 10e6 bp来检测。如果提供的 GWAS 文件基因组版本是 GRCh37,推荐将其转换为 GRCh38(使用参数:genomeVersion="grch37)。

sentinelSnpDF <- xQTLanalyze_getSentinelSnp(gwasDF, pValueThreshold = 5e-08)
# 筛选过后的snp如下
sentinelSnpDF
#>          rsid  chr position   pValue    maf    beta      se
#> 1: rs13120565 chr4 10702513 5.66e-10 0.6429 0.01825 0.00294

3.确定 snps 相关性状基因

性状基因是指位于哨兵 SNPs 1Mb 范围内(默认值,可以通过参数detectRange更改)的基因,使用函数 xQTLanalyze_getTraits 搜索哨兵 SNPs 1Mb 范围内的每个基因。

traitsAll <- xQTLanalyze_getTraits(sentinelSnpDF, detectRange=1e6, tissueSiteDetail=tissueSiteDetail)
# 总共检测到3个特征基因与1个SNP之间的3个关联
traitsAll
#>          rsid  chr position   pValue    maf    beta      se       gencodeId
#> 1: rs13120565 chr4 10702513 5.66e-10 0.6429 0.01825 0.00294 ENSG00000002587
#> 2: rs13120565 chr4 10702513 5.66e-10 0.6429 0.01825 0.00294 ENSG00000109684
#> 3: rs13120565 chr4 10702513 5.66e-10 0.6429 0.01825 0.00294 ENSG00000261490

4.进行共定位分析

共定位方法中有四个统计假设

  • H0:表型1(GWAS)和 表型2 (*QTL)与某个基因组区域的所有SNP位点无显著相关

  • H1/H2:表型1(GWAS)或表型2(*QTL)与某个基因组区域的SNP位点显著相关

  • H3:表型1(GWAS)和 表型2 (*QTL)与某个基因组区域的SNP位点显著相关,但由不同的因果变异位点驱动

  • H4:表型1(GWAS)和 表型2 (*QTL)与某个基因组区域的SNP位点显著相关,且由同一个因果变异位点驱动

① 对于单个特征基因,例如上步骤中的 ENSG00000109684,可以使用coloc方法执行共定位分析:

output <- xQTLanalyze_coloc(gwasDF, "ENSG00000109684", tissueSiteDetail=tissueSiteDetail) # using gene symbol
# 输出是一个列表,包括两部分:coloc_Out_summary 和 gwasEqtlInfo
output$coloc_Out_summary
#>    nsnps    PP.H0.abf   PP.H1.abf    PP.H2.abf  PP.H3.abf PP.H4.abf
#> 1:  7107 7.097893e-11 1.32221e-07 3.890211e-06 0.00625302  0.993743
#>          traitGene candidate_snp SNP.PP.H4
#> 1: ENSG00000109684    rs13120565 0.5328849

② 对于多个特征基因,可以使用for循环或lapply函数来获取所有基因的输出(使用coloc和hyprcoloc方法)

outputs <- rbindlist(lapply( unique(traitsAll$gencodeId), function(x){ # using gencode ID.xQTLanalyze_coloc(gwasDF, x, tissueSiteDetail=tissueSiteDetail, method = "Both")$colocOut }))
# outputs是一个data.table,它合并了所有基因的 coloc_Out_summary 的所有结果
outputs
#>          traitGene nsnps    PP.H0.abf    PP.H1.abf    PP.H2.abf  PP.H3.abf
#> 1: ENSG00000002587  6452 1.730175e-05 3.218430e-02 6.603361e-05 0.12198838
#> 2: ENSG00000109684  7107 7.097893e-11 1.322210e-07 3.890211e-06 0.00625302
#> 3: ENSG00000261490  6601 5.287051e-05 9.848309e-02 4.801374e-04 0.89435622
#>     PP.H4.abf candidate_snp SNP.PP.H4 hypr_posterior hypr_regional_prob
#> 1: 0.84574398    rs13120565 0.4140146         0.5685             0.9694
#> 2: 0.99374296    rs13120565 0.5328849         0.9793             0.9999
#> 3: 0.00662768    rs13120565 0.4219650         0.0000             0.0101
#>    hypr_candidate_snp hypr_posterior_explainedBySnp
#> 1:         rs13120565                        0.2726
#> 2:         rs13120565                        0.4747
#> 3:         rs13120565                        0.4118

5. 结果可视化

对于潜在的因果基因ENSG00000109684(PP4=0.9937 & hypr_posterior=0.9999,数值越大越显著),我们可以获得其跨组织的显著关联:

xQTLvisual_eqtl("ENSG00000109684")

图片

为了可视化 p 值分布和比较 GWAS 和 eQTL 的信号,首先通过 rsid 合并 GWAS 和 eQTL 的变异

eqtlAsso <- xQTLdownload_eqtlAllAsso(gene="ENSG00000109684", tissueLabel = tissueSiteDetail, data_source = "liLab")
gwasEqtldata <- merge(gwasDF, eqtlAsso, by="rsid", suffixes = c(".gwas",".eqtl"))

函数 xQTLvisual_locusCompare 在右上角显示候选 SNP rs13120565:

xQTLvisual_locusCompare(gwasEqtldata[,.(rsid, pValue.eqtl)], gwasEqtldata[,.(rsid, pValue.gwas)], legend_position = "bottomright")
# 注意:SNP连锁不平衡信息会自动在线下载。由于网络问题,下载有时可能会失败。如果这种情况发生,请再次尝试运行。

图片

GWAS 信号的 Locuszoom 图

xQTLvisual_locusZoom(gwasEqtldata[,.(rsid, chrom, position, pValue.gwas)], legend=FALSE)

图片

eQTL 信号的 LocusZoom 图

xQTLvisual_locusZoom(gwasEqtldata[,.(rsid, chrom, position, pValue.eqtl)], highlightSnp = "rs13120565", legend=FALSE)

图片

eQTL(rs13120565-ENSG00000187323.11)标准化表达的小提琴图

xQTLvisual_eqtlExp("rs13120565", "ENSG00000109684", tissueSiteDetail = tissueSiteDetail)

图片

xQTLvisual_locusCombine结合locuscompare和locuszoom图

xQTLvisual_locusCombine(gwasEqtldata[,c("rsid","chrom", "position", "pValue.gwas", "pValue.eqtl")], highlightSnp="rs13120565")

图片

共定位位点应显示出一般模式,其中高 LD 的 SNPs 将显示出与共定位基因表达水平的强关联,而低 LD 的 SNPs 的 eQTL 关联将减弱。eQTL 的这种模式在不同组织/细胞类型中变化,其强度表明了变异的调节效应的力量。我们可以使用 xQTLvisual_coloc 可视化不同组织/细胞类型中 eQTL 的 p 值与 LD 之间的相关性,以轻松区分这种模式:

multi_tissue_coloc <- xQTLvisual_coloc(gene="ENSG00000109684", variantName="rs13120565", tissueLabels = c("Brain - Cerebellar Hemisphere", "Brain - Cerebellum", "Thyroid", "Lung","Cells - EBV-transformed lymphocytes"))

图片

速来速去 

图片

今天就分享到这

相关文章:

xQTLs 共定位分析(XQTLbiolinks包)

XQTL 共定位分析 XQTLbiolinks 是一个端到端的生物信息学工具&#xff0c;由深圳湾实验室李磊研究团队开发&#xff0c;用于高效地分析公共或用户定制的个xQTLs数据。该软件提供了一个通过与 xQTLs 共定位分析进行疾病靶基因发现的流程&#xff0c;以检测易感基因和致病变异。…...

网络工程(学习记录)

day1创建Vlan Switch>enable Switch#configure terminal Switch(config)#hostname SW1 修改名称为SW1 SW1(config)# SW1(config)#vlan 10 创建vlan10 SW1(config-vlan)#vlan 20 SW1(config)#interface f0/1 进入接口f0…...

全志A133 android10 适配EC20 4G模块

一&#xff0c;移植适配 1. 驱动移植 代码路径&#xff1a;longan/kernel/linux-4.9/drivers/usb/serial/option.c diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c index 9f96dd2..2f25466 100644 --- a/drivers/usb/serial/option.cb/drivers/us…...

数据分析:Python语言网络图绘制

文章目录 介绍加载R包类别导入数据下载数据画图介绍 网络图是一种图形表示法,用于展示实体之间的关系。在不同的领域中,网络图有着不同的含义和用途:在生物学中,网络图可以用来表示生物分子之间的相互作用,如蛋白质相互作用网络。 加载R包 import pandas as pd import …...

使用ChatGPT引导批判性思维,提升论文的逻辑与说服力的全过程

学境思源&#xff0c;一键生成论文初稿&#xff1a; AcademicIdeas - 学境思源AI论文写作 批判性分析&#xff08;Critical Analysis&#xff09; 是论文写作中提升质量和说服力的重要工具。它不仅帮助作者深入理解和评价已有研究&#xff0c;还能指导作者在构建自己论点时更加…...

vue限定类型上传文件 最简单实践(单个可文件、可图片)

这个是为了文件导入弄的&#xff0c;内部运维人员使用的 目前还没做删除文件的交互 <el-uploadclass"upload-demo"ref"upload":before-upload"handleBeforeUpload"action"#"accept".xls,.xlsx":limit"1">&l…...

【GUI设计】基于图像分割和边缘算法的GUI系统(7),matlab实现

博主简介&#xff1a; 如需获取设计的完整源代码或者有matlab图像代码项目需求/合作&#xff0c;可联系主页个人简介提供的联系方式或者文末的二维码。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 本次案例是基于图像分割和边缘算法的GUI系统…...

未来之窗VOS编程工具让你的工作效率翻倍———未来之窗行业应用跨平台架构

未来之窗编程工具概述 平板电脑/手机用于编程具有诸多优点。其便携性强&#xff0c;方便随时随地开展工作。触摸操作直观便捷&#xff0c;长续航能满足长时间需求&#xff0c;启动迅速。支持手写绘图&#xff0c;利于表达想法。能集成多种编程工具&#xff0c;还便于通过云服务…...

分布式数据库——HBase基本操作

启动HBase: 1.启动hadoop,进入hadoop的sbin中 cd /opt/hadoop/sbin/ 2.初始化namenode hdfs namenode -format 3.启动hdfs ./start-all.sh 4.启动hbase cd /opt/hbase/bin ./start-hbase.sh 5.使用jps查看进程 jps 以下图片则是hbase启动成功~ 运行HBase ./hbase sh…...

Go语言并发编程中的超时与取消机制解析

解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 并发编程是Go语言的核心优势之一,而在实际应用中,超时和取消操作会频繁出现。超时机制能够帮助我们理解系统行为,防止系统因为某些任务执行过长而陷入困境。与此同时,取消操作则是应对超时的一种自然反应。此…...

Unity3D UIdocument如何改变层级详解

前言 在Unity3D中&#xff0c;UI文档的层级改变通常涉及UI元素的显示顺序&#xff0c;这是通过UGUI&#xff08;Unitys Graphical User Interface&#xff09;系统来实现的。以下是一篇关于如何在Unity3D中改变UI元素层级的详细解析&#xff0c;包括技术详解和代码实现。 对惹…...

Debian与Ubuntu:深入解读两大Linux发行版的历史与联系

Debian与Ubuntu&#xff1a;深入解读两大Linux发行版的历史与联系 引言 在开源操作系统的领域中&#xff0c;Debian和Ubuntu是两款备受瞩目的Linux发行版。它们不仅在技术上有着密切的联系&#xff0c;而且各自的发展历程和理念也对开源社区产生了深远的影响。本文将详细介绍…...

GPU服务器本地搭建Dify+xinference实现大模型应用

文章目录 前言一、显卡驱动配置1.检测显卡2.安装驱动 二、安装nvidia-docker二、安装Xinference1.拉取镜像2.运行Xinference3.模型部署 三、安装Dify1.下载源代码2.启动 Dify3.访问 Dify 四、Dify构建应用1.配置模型供应商2.聊天助手3.Agent 前言 本文使用的GPU服务器为UCloud…...

嵌入式程序设计经验 创建复位函数

在设计嵌入式系统重新时 需要考虑软复位的情况, 软复位时 很多变量都需要重置为初始值, 如果一个个去赋值 很麻烦, 下面是一个简单的办法 主要是对结构体 复位的方法: #include <stdint.h>typedef struct {uint8_t reg1;uint8_t reg2;uint8_t reg3; } StruSimuStat1…...

每天五分钟深度学习框架pytorch:交叉熵计算时的维度是什么?

本文重点 前面我们学习了pytorch中已经封装好的损失函数,已经封装好的损失函数有很多,但是我们并没有详细介绍,原因就是单独介绍损失函数可能难以理解,我们上一章节的目的是让大家先了解一下常见的损失函数,然后再之后的实际使用中遇到哪个损失函数,我们就使用哪个损失函…...

【Axure视频教程】跨页面控制中继器表格

今天教大家在Axure制作跨页面控制中继器表格的原型模板&#xff0c;我们可以在一个页面中通过交互&#xff0c;对另一个页面中的中继器进行控制&#xff0c;控制其显示的数据内容。那这个模板使用也很简单&#xff0c;复制粘贴按钮&#xff0c;在中继器表格里填写对应的数据&am…...

Android 利用OSMdroid开发GIS 添加 控件以及定位

部署看这个&#xff1a;Android 利用OSMdroid开发GIS-CSDN博客 添加控件&#xff0c;直接上源码 activity_main.xml&#xff1a; <?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/…...

前端vue-实现富文本组件

1.使用wangeditor富文本编辑器 工具网站&#xff1a;https://www.wangeditor.com/v4/ 下载安装命令&#xff1a;npm i wangeditor --save 成品如下图&#xff1a; 组件实现代码 <template><div><!-- 富文本编辑器 --><div id"wangeditor">…...

AUTOSAR汽车电子嵌入式编程精讲300篇-基于CAN总线的气动控制(中)

目录 2.2 CAN总线技术及TTCAN协议 2.2.1 CAN总线技术 2.2.2 TTCAN协议 3 气动系统的定位控制研究 3.1 滑模控制原理 3.1.1 滑模控制概念和特性 3.1.2 滑模控制的抖振问题 3.1.3 非奇异终端滑模控制 3.2 气动系统定位控制策略设计 3.2.1 跟踪微分器的设计…...

国内可用ChatGPT-4中文镜像网站整理汇总【持续更新】

一、GPT中文镜像网站 ① yixiaai.com 支持GPT4、4o以及o1&#xff0c;支持MJ绘画 ② chat.lify.vip 支持通用全模型&#xff0c;支持文件读取、插件、绘画、AIPPT ③ AI Chat 支持GPT3.5/4&#xff0c;4o以及MJ绘画 二、模型知识 o1/o1-mini&#xff1a;最新的版本模型&am…...

音乐歌词获取终极指南:如何3分钟搞定全网歌曲歌词的完整方案

音乐歌词获取终极指南&#xff1a;如何3分钟搞定全网歌曲歌词的完整方案 【免费下载链接】163MusicLyrics 云音乐歌词获取处理工具【网易云、QQ音乐】 项目地址: https://gitcode.com/GitHub_Trending/16/163MusicLyrics 你是否曾经为了找到一首心爱歌曲的完整歌词而花费…...

Unity3D LineRenderer 从入门到精通:手把手教你绘制炫酷动态轨迹(附完整C#脚本)

Unity3D LineRenderer 动态轨迹绘制实战指南 在游戏开发中&#xff0c;动态轨迹效果是提升视觉体验的重要元素之一。无论是魔法技能的飞行路径、赛车游戏的轮胎痕迹&#xff0c;还是数据可视化中的动态连线&#xff0c;流畅且富有表现力的线条渲染都能显著增强场景的沉浸感。Un…...

告别混合写法!详解Nginx 1.25.1中独立的http2指令配置与性能影响

Nginx 1.25.1 HTTP/2配置革新&#xff1a;架构演进与性能实践指南 当Nginx 1.25.1的更新日志中出现"http2指令独立"这一行文字时&#xff0c;许多资深运维工程师的配置管理哲学正在被悄然改写。这不仅仅是语法糖的调整&#xff0c;而是反映了Web服务器架构设计从&quo…...

【NotebookLM统计方法选择权威指南】:20年数据科学家亲授5大避坑法则与3步决策框架

更多请点击&#xff1a; https://kaifayun.com 更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;NotebookLM统计方法选择的核心挑战与认知重构 NotebookLM 作为 Google 推出的面向研究者与知识工作者的 AI 助手&#xff0c;其核心能力依赖于对用户上传…...

心理学实验小白必看:用E-Prime 3.0从零设计你的第一个Stroop任务(附完整流程)

心理学实验入门&#xff1a;用E-Prime 3.0构建专业级Stroop实验全指南 第一次打开E-Prime时&#xff0c;满屏的控件和属性面板可能让你感到无从下手——这几乎是每个心理学研究生的必经之路。作为认知心理学最经典的实验范式之一&#xff0c;Stroop任务不仅能验证注意与自动加…...

RStudio 2026最新版下载:一键直达官网,解锁数据分析新体验

RStudio免费版安装包下载地址&#xff1a;RStudio安装包 RStudio 是 R 语言专用的集成开发环境&#xff0c;简单说就是 R 语言的 “超级工作台”。它不替代 R 语言&#xff0c;而是必须搭配 R 语言使用&#xff0c;负责把 R 语言的能力可视化、流程化、高效化。 RStudio 的核心…...

点支承幕墙玻璃破裂故障分析

点支承幕墙玻璃破裂故障分析 【作 者】:龙文志 【摘 要】:本文从点支承幕墙玻璃破裂故瘴出发,系统阐述了点支承幕墙玻璃破裂故障多于其它玻璃幕墙的原因,提出了点支承玻璃幕墙设计时,除对玻璃面板的大面应力进行计算分析外,同时也应该对玻璃孔边应力进行设计分析;为了…...

DS4Windows完全指南:3步解决PlayStation手柄在Windows的兼容性问题

DS4Windows完全指南&#xff1a;3步解决PlayStation手柄在Windows的兼容性问题 【免费下载链接】DS4Windows Like those other ds4tools, but sexier 项目地址: https://gitcode.com/gh_mirrors/ds/DS4Windows 你是否曾经遇到过这样的问题&#xff1a;购买了心爱的PlayS…...

从“玩原神不”到AC:手把手教你用概率DP解决湘潭邀请赛F题(期望计算避坑指南)

从队友闲聊到AC代码&#xff1a;概率DP在算法竞赛中的实战拆解 "玩原神不~"——这句看似随意的队友闲聊&#xff0c;竟成了解决湘潭邀请赛F题的关键灵感。在算法竞赛中&#xff0c;概率与期望DP问题往往让选手望而生畏&#xff0c;但通过这道题的完整解析&#xff0…...

WinCC报表数据老丢?可能是全局动作的锅!一个标识变量搞定设备运行数据可靠存储

WinCC报表数据丢失的根源分析与高可靠存储方案 在工业自动化系统中&#xff0c;WinCC作为监控和数据采集(SCADA)的核心平台&#xff0c;其报表数据的完整性直接关系到生产运营分析和设备管理决策的准确性。许多工程师都遇到过这样的困扰&#xff1a;明明设备状态变化已经触发&…...