TWAS / FUSION
FUSION 是一套用于执行转录组范围和调控组范围关联研究(TWAS 和 RWAS)的工具。它通过构建功能/分子表型的遗传成分的预测模型,并使用 GWAS 汇总统计数据预测和测试该成分与疾病的关联,目标是识别 GWAS 表型与仅在参考数据中测量的功能表型之间的关联。
1.主要功能与特点
- TWAS 方法:基于基因表达的预测模型,识别基因表达与疾病之间的关联。
- RWAS 方法:基于染色质可及性等调控组学数据,识别调控变异与疾病之间的关联。
- 预计算模型:提供来自多个研究的预计算预测模型,方便用户进行分析。
- 支持多种数据类型:包括单组织基因表达、多组织基因表达(如 GTEx v8)、跨组织表达(如 sCCA 方法)、肿瘤/正常组织表达(如 TCGA 数据)等。
- 灵活的分析流程:用户可以使用预计算的模型,也可以自行计算预测模型。
2.安装与依赖
- 软件包下载:从 GitHub 下载 FUSION 软件包。
- LD 参考数据:下载 1000 Genomes LD 参考数据。
- 依赖库:
- R 包:
optparse
、RColorBrewer
、plink2R
。 - 如果计算自己的权重,还需要
glmnet
、methods
,以及 GCTA 和 PLINK2。 - 如果使用 BSLMM,需要安装 GEMMA。
- R 包:
3.典型分析流程
- 准备 GWAS 汇总统计数据:需符合 LD-score 格式,包含 SNP、A1、A2 和 Z 分数等字段。
- 准备表达权重文件:从预计算的权重文件中选择,或自行计算权重。
- 运行 FUSION 分析:使用
FUSION.assoc_test.R
脚本,指定 GWAS 数据、权重文件、参考 LD 数据等参数。 - 结果输出:生成包含基因-疾病关联统计量(如 TWAS Z 分数和 P 值)的输出文件。
典型分析流程是使用 FUSION 工具进行转录组范围关联研究(TWAS)的标准步骤。以下是一个详细的典型分析流程,以使用 PGC(精神病基因组学联盟)精神分裂症(SCZ)GWAS 汇总统计数据和 GTEx 全血数据为例:
3.1 安装 FUSION 软件
- 从 GitHub 下载 FUSION 软件包:
wget https://github.com/gusevlab/fusion_twas/archive/master.zip unzip master.zip cd fusion_twas-master
- 下载并解压 1000 Genomes LD 参考数据:
其主要目的是:
提供 SNP 之间的连锁不平衡信息,用于基因表达预测和 GWAS 数据的匹配。
支持 IMPG 算法填补缺失的 GWAS 统计信息。
提高分析的统计效能,确保 TWAS 分析的准确性和可靠性。wget https://data.broadinstitute.org/alkesgroup/FUSION/LDREF.tar.bz2 tar xjvf LDREF.tar.bz2
- 下载并安装 plink2R 库:
目的:能够在 R 中有效地读取和处理 PLINK 文件,进而进行后续的遗传分析。wget https://github.com/gabraham/plink2R/archive/master.zip unzip master.zip
- 在 R 中安装必要的库:
install.packages(c('optparse', 'RColorBrewer')) install.packages('plink2R-master/plink2R/', repos = NULL)
3.2 准备 GWAS 汇总统计数据
- 下载 PGC 精神分裂症 GWAS 汇总统计数据:
wget https://data.broadinstitute.org/alkesgroup/FUSION/SUM/PGC2.SCZ.sumstats
3.3 准备表达权重文件
- 创建权重目录并下载 GTEx 全血表达权重:
mkdir WEIGHTS cd WEIGHTS wget https://data.broadinstitute.org/alkesgroup/FUSION/WGT/GTEx.Whole_Blood.tar.bz2 tar xjf GTEx.Whole_Blood.tar.bz2
3.4. 运行 FUSION 分析
3.4.1 检查输入文件
- 确保 GWAS 汇总统计数据符合 LD-score 格式:
- 包含
SNP
(SNP 标识符)、A1
(效应等位基因)、A2
(其他等位基因)、Z
(Z 分数)等字段。
- 包含
- 确保权重文件路径正确,权重文件格式为
*.RDat
。
3.4.2 运行 FUSION 分析脚本
- 在 FUSION 目录下运行以下命令,对第 22 号染色体进行分析:
参数说明:Rscript FUSION.assoc_test.R \ --sumstats PGC2.SCZ.sumstats \ --weights ./WEIGHTS/GTEx.Whole_Blood.pos \ --weights_dir ./WEIGHTS/ \ --ref_ld_chr ./LDREF/1000G.EUR. \ --chr 22 \ --out PGC2.SCZ.22.dat
--sumstats
:GWAS 汇总统计数据文件路径。--weights
:权重文件列表文件路径。--weights_dir
:权重文件所在目录。--ref_ld_chr
:按染色体分的 LD 参考数据文件前缀。--chr
:分析的染色体编号。--out
:输出文件路径。
3.5 分析结果解释
3.5.1 输出文件
- 输出文件
PGC2.SCZ.22.dat
包含以下内容:FILE
:权重文件路径。ID
:基因标识符。CHR
:染色体编号。P0
和P1
:基因的起始和结束位置。HSQ
:基因的遗传力。BEST.GWAS.ID
和BEST.GWAS.Z
:该基因所在区域中 GWAS 最显著的 SNP 及其 Z 分数。EQTL.ID
和EQTL.Z
:该基因所在区域中最佳 eQTL 的 SNP 及其 Z 分数。TWAS.Z
和TWAS.P
:TWAS Z 分数和 P 值,是主要的统计量。
3.5.2 结果解释
- TWAS Z 分数:表示基因表达与疾病之间的关联强度。如果 Z 分数显著(例如 P 值小于阈值),则表明基因表达与疾病之间存在显著关联。
- TWAS P 值:表示关联的显著性水平。例如,P 值小于 5e-8 表示基因表达与疾病之间的关联在全基因组水平上显著。
- 遗传力(HSQ):表示基因表达的遗传力,即基因表达的遗传变异对表型变异的贡献比例。
3.6 后处理分析
3.6.1 提取显著关联
- 提取第 22 号染色体上转录组范围显著的关联:
cat PGC2.SCZ.22.dat | awk 'NR == 1 || $NF < 0.05/2058' > PGC2.SCZ.22.top
3.6.2 进行联合/条件检验
- 使用
FUSION.post_process.R
脚本进行联合和条件检验:
参数说明:Rscript FUSION.post_process.R \ --sumstats PGC2.SCZ.sumstats \ --input PGC2.SCZ.22.top \ --out PGC2.SCZ.22.top.analysis \ --ref_ld_chr ./LDREF/1000G.EUR. \ --chr 22 \ --plot --locus_win 100000
--input
:TWAS 分析结果文件。--out
:输出文件路径。--plot
:生成可视化图表。--locus_win
:定义基因所在区域的窗口大小(以碱基对为单位)。
3.6.3 结果解释
- 联合检验:识别在同一区域内多个基因表达与疾病的联合关联。
- 条件检验:识别在控制其他基因表达后,某个基因表达与疾病的独立关联。
- 可视化图表:包括曼哈顿图、散点图等,展示 GWAS 信号与预测基因表达的关系。
3.7 进一步分析
3.7.1 细映射(Fine-mapping)
- 使用 FOCUS 方法对多个 TWAS 关联进行细映射,识别因果基因。
3.7.2 估计基因表达介导的遗传力
- 使用 MESC 工具估计疾病遗传力中由基因表达介导的部分。
3.7.3 条件显著性检验(Permutation Test)
- 使用
--perm
参数进行置换检验,评估 TWAS 关联是否由随机共定位引起。
3.7.4 多参考面板的联合检验(Omnibus Test)
- 使用
--omnibus
参数对来自多个参考面板的预测结果进行联合检验。
3.7.5 共定位分析(Colocalization Analysis)
- 使用
--coloc_P
参数与 COLOC 软件接口进行共定位分析。
4.输出结果解读
- TWAS Z 分数:表示基因表达与疾病关联的统计量,是主要关注指标。
- TWAS P 值:表示关联的显著性。
- 其他指标:包括基因的遗传力(heritability)、最佳 GWAS SNP、最佳 eQTL 等信息。
5.预计算模型下载
- 单组织基因表达:如 NTR 外周血、YFS 全血等。
- GTEx v8 多组织表达:提供多种组织的基因表达权重,分为“显著遗传力基因”和“所有基因”两种版本。
- 跨组织表达(sCCA):基于 GTEx 数据的稀疏典型相关分析(sCCA)生成的跨组织特征权重。
- TCGA 肿瘤/正常表达:基于 TCGA 数据的肿瘤 RNA-seq 数据生成的种系基因表达模型。
- 多情境(CONTENT)表达:基于 GTEx 组织和 CLUES 单细胞数据的情境特异性权重。
6.自定义权重计算
- 输入数据:需要 PLINK 格式的基因型数据(bed/bim/fam 文件)和基因表达数据。
- 运行脚本:使用
FUSION.compute_weights.R
脚本,指定输入文件、临时文件路径、输出路径等参数。 - 支持的模型:包括 BLUP、BSLMM、LASSO、Elastic Net 和 top1 等。
7.后处理分析
- 联合/条件检验:使用
FUSION.post_process.R
脚本,对 TWAS 结果进行联合检验和条件分析,识别独立的关联信号。 - 可视化:生成曼哈顿图、散点图等,展示 GWAS 信号与预测基因表达的关系。
- 其他分析:如多参考面板的联合检验(omnibus test)、与 COLOC 软件的接口进行共定位分析等。
8.常见问题解答(FAQ)
- 数据匹配:确保 GWAS 数据、权重文件和参考 LD 数据的 SNP 一致。
- LD 参考面板:可以使用自己的 LD 参考面板,但需要与权重文件的 SNP 匹配。
- 结果验证:推荐通过外部研究进行验证,或使用基因风险评分进行聚合分析。
- 效应方向解释:TWAS 效应方向表示基因表达与疾病表型的遗传协方差关系。
相关文章:
TWAS / FUSION
FUSION 是一套用于执行转录组范围和调控组范围关联研究(TWAS 和 RWAS)的工具。它通过构建功能/分子表型的遗传成分的预测模型,并使用 GWAS 汇总统计数据预测和测试该成分与疾病的关联,目标是识别 GWAS 表型与仅在参考数据中测量的…...
矩阵短剧系统:如何用1个后台管理100+小程序?深度解析多端绑定技术
短剧行业效率革命!一套系统实现多平台内容分发、数据统管与流量聚合 在短剧行业爆发式增长的今天,内容方和运营者面临两大核心痛点:多平台运营成本高与流量分散难聚合。传统模式下,每个小程序需独立开发后台,导致人力…...

使用Python 打造多格式文件预览工具 — 图、PDF、Word、Excel 一站式查看
在日常办公或文件管理场景中,我们经常面临这样的问题:在一个文件夹中短时间内产生了大量不同类型的文件(如图片、PDF、Word、Excel),我们需要快速浏览和筛选这些文件的内容,却不希望一个个打开它们。有没有…...

[docker基础四]容器虚拟化基础之 LXC
目录 一 认识LXC 二 LXC容器操作实战 1)实战目的 2)基础知识 lxc-checkconfig lxc-create lxc-start lxc-ls lxc-info lxc-attach lxc-stop lxc-destory 3)安装LXC(我的是Ubuntu) 4)操作实战 1. 检查 lxc 是否运行…...

路由策略和策略路由的区别以及配置案例
区别 路由策略:路由策略是通过ACL等方式控制路由发布,让对方学到适当路由条目,比如有20条路由,只想让某个路由器学到10条,可以通过路由策略进行过滤。 策略路由:策略路由是通过定义策略和应用,…...

MAD-TD: MODEL-AUGMENTED DATA STABILIZES HIGH UPDATE RATIO RL
ICLR 2025 spotlight paper 构建能够在少量样本下学习出优良策略的深度强化学习(RL)智能体一直是一个极具挑战性的任务。为了提高样本效率,近期的研究尝试在每获取一个新样本后执行大量的梯度更新。尽管这种高更新-数据比(UTD&am…...

PyTorch API 10 - benchmark、data、批处理、命名张量
基于 PyTorch 2.7 文章目录 基准测试工具 - torch.utils.benchmarktorch.utils.bottlenecktorch.utils.checkpointtorch.utils.cpp_extensiontorch.utils.data数据集类型映射式数据集可迭代式数据集 数据加载顺序与采样器加载批处理与非批处理数据自动批处理(默认情…...

后缀表达式+栈(详解)(c++)
前言 很抱歉,上一期没有介绍栈stack的用法,今天简要介绍一下,再讲讲后缀表达式,用stack栈做一些后缀表达式的练习。 栈 栈stack是c中系统给出的栈,有了它,就不用自己创建栈啦! 头文件 栈sta…...

[C++类和对象]构造函数和析构函数
类的6个默认成员函数 如果一个类中什么成员都没有,简称为空类。 空类中真的什么都没有吗? 并不是,任何类在什么都不写时,编译器会自动生成以下6 个默认成员函数。 默认成员函数:用户没有显式实现,编译器会…...

onenet连接微信小程序(mqtt协议)
一、关于mqtt协议 mqtt协议常用于物联网,是一种轻量级的消息推送协议。 其中有三个角色,Publisher设备(客户端)发布主题到服务器,其他的设备通过订阅主题,获取该主题下的消息,Publisher可以发…...
使用 JAX-RS 创建 REST 服务/微服务
REST(表述性状态转移)是一种基于 Web 标准和 HTTP 协议的架构风格,广泛用于构建可扩展、无状态且易于消费的 Web 服务。JAX-RS(Java API for RESTful Web Services)是 Java 提供的标准 API,通过注解简化了 RESTful Web 服务的开发和部署。JAX-RS 允许开发者使用 Java 类和…...

人脸真假检测:SVM 与 ResNet18 的实战对比
在人工智能蓬勃发展的当下,人脸相关技术广泛应用于安防、金融、娱乐等诸多领域。然而,随着人脸合成技术的日益成熟,人脸真假检测成为保障这些应用安全的关键环节。本文将深入探讨基于支持向量机(SVM)结合局部二值模式&…...
如何创建伪服务器,伪接口
创建伪接口一般是用于模拟真实接口的行为,以便在开发和测试过程中进行使用,以下是一些常见的创建伪接口的方法: 使用 Web 框架搭建: Python 和 Flask:Flask 是一个轻量级的 Python Web 框架。示例代码如下:…...

《AI大模型应知应会100篇》第54篇:国产大模型API对比与使用指南
第54篇:国产大模型API对比与使用指南 ——从百度文心到通义千问,一文看懂国内AI平台选型 📌 摘要 随着中国人工智能产业的快速发展,越来越多的国产大模型平台开始崭露头角。本文将系统梳理当前主流国产大模型 API(如…...

质量、重力、引力、惯性 的本质,以及虫洞
1、质量 物体,之所以,有质量源自于其微观结构。物体好比一块海绵,浸没在暗物质的海洋里。随暗物质海洋的涌动而不断移动。海绵微观结构越细密,受到暗物质海洋的裹携力就越大(好比汤勺,与漏勺对汤水的阻碍力。又好比纱窗与船帆对风的阻隔力。) 微观结构越细密,在相同表面积…...

基于ssm+mysql的快递管理系统(含LW+PPT+源码+系统演示视频+安装说明)
系统功能 管理员功能:个人中心、用户管理、订单管理、快递员管理;快递员功能:查看订单、更新快递状态;派单员功能:订单分配、订单管理;客户功能:订单查询、个人信息维护。 作者:计算…...
JVM——即时编译器的中间表达形式
中间表达形式(IR):编译器的核心抽象层 1. IR的本质与作用 在编译原理的体系中,中间表达形式(Intermediate Representation, IR)是连接编译器前端与后端的桥梁。前端负责将源代码转换为IR,而后…...

质心均匀体(引力屏蔽技术)
1、线质心体 陀螺我们都玩过,一个惯性圆盘加一个轴,旋转起来可以独脚而立。(垂直于旋转面的不平衡力,在旋转面旋转180度后,被其自身抵消,故而平衡。可抵消不平衡力的大小,取决于惯性飞轮的质量和旋转的速度)。此时,旋转的陀螺等同于一个轴线质心体(轴线上任意一点提供支…...
深度学习:AI为老年痴呆患者点亮希望之光
引言 随着全球人口老龄化进程的加速,老年痴呆症已成为严重威胁老年人健康和生活质量的公共卫生问题。据世界卫生组织统计,全球每 3 秒钟就有 1 人被诊断为痴呆,预计到 2050 年,全球痴呆患者人数将从目前的约 5000 万激增至 1.52 亿…...

JAVA实战开源项目:健身房管理系统 (Vue+SpringBoot) 附源码
本文项目编号 T 180 ,文末自助获取源码 \color{red}{T180,文末自助获取源码} T180,文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…...

STM32的SysTick
SysTick介绍 定义:Systick,即滴答定时器,是内核中的一个特殊定时器,用于提供系统级的定时服务。该定时器是一个24位的递减计数器,具有自动重载值寄存器的功能。当计数器到达自动重载值时,它会自动重新加载…...

【图书管理系统】深度讲解:图书列表展示的后端实现、高内聚低耦合的应用、前端代码讲解
1.约定前后端交互接口 [请求] /book/getListByPage [参数] currentPage1&pageSize10 [响应] 返回封装的result对象对应的Json数据 2. 整体逻辑 2.1 Controller的逻辑 (1)把接收的参数封装为PageRequest类,里面有属性:curren…...
Github 2025-05-10 Rust开源项目日报 Top10
根据Github Trendings的统计,今日(2025-05-10统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Rust项目10TypeScript项目1Python项目1Zed: 由Atom和Tree-sitter的创建者开发的高性能多人代码编辑器 创建周期:1071 天开发语言:Rust协议类型…...
drf 使用jwt
安装jwt pip install pyJwt 添加登录url path("jwt/login",views.JwtLoginView.as_view(),namejwt-login),path("jwt/order",views.JwtOrderView.as_view(),namejwt-order), 创建视图 from django.contrib.auth import authenticateimport jwt from jw…...

养生:为健康生活添彩
养生是对生活的热爱,是为健康生活注入活力的良方。从饮食、运动到生活习惯,每一个方面都能让我们离健康更近一步。以下是一些实用的养生之道,助你开启健康生活的新旅程。 饮食养生:营养均衡,健康基石 合理的饮食是养…...
在 Vue 3 中使用 canvas-confetti 插件
🎉 在 Vue 3 中使用 canvas-confetti 插件 canvas-confetti 是一个轻量、无依赖的 JavaScript 动画库,用于在网页上展示彩带、庆祝动画。非常适合用于抽奖、支付成功、活动庆祝等场景。 本教程将指导你如何在 Vue 3 项目中集成并使用该插件。 …...
rt-thread+STM32H7移植lwip出现问题解决方法
问题一:ping不通,或有丢帧情况。 问题二:不开启优化一切正常,keil开启优化后就无法联网。 问题三:网络断断续续。 解决方法: 主要是mpu配置和drv_eth驱动的问题,我的配置如下: mpu&…...
Java Spring、Spring MVC、Spring Boot 和 Spring Cloud 的关系与区别
在 Java 开发领域,Spring、Spring MVC、Spring Boot 和 Spring Cloud 这些框架和技术名词频繁出现。对于初学者来说,理解它们之间的关系和区别可能有些困惑。本文将深入浅出地讲解这些概念,帮助你理清它们的联系与差异。 一、Spring 1.1 定义 Spring 是一个轻量级的 Java…...

服务器综合实验(实战详解)
该文章的目录部分 实验内容 实验完成步骤 虚拟机准备 配置两个虚拟机的本地仓库 虚拟机A: 虚拟机B: 配置SSH公钥互信 虚拟机A: 编辑 虚拟机B: 提供基于bind的DNS服务 虚拟机A: 项目需求1: …...
Milvus 向量数据库详解与实践指南
一、Milvus 核心介绍 1. 什么是 Milvus? Milvus 是一款开源、高性能、可扩展的向量数据库,专门为海量向量数据的存储、索引和检索而设计。它支持近似最近邻搜索(ANN),适用于图像检索、自然语言处理(NLP&am…...