什么是GWAS全基因组关联分析?
什么是全基因组关联分析?(Genome-Wide Association Study,GWAS)
全基因组关联分析(GWAS)是一种在全基因组范围内搜索遗传变异(通常是单核苷酸多态性,SNP)与复杂性状之间关联的方法。
其核心思想是通过比较群体中不同个体的基因型与表型,识别出与目标性状显著相关的基因位点。GWAS基于连锁不平衡(LD)的原理,即相邻的遗传变异倾向于一起遗传,因此可以通过标记SNP间接捕获致病变异。
GWAS的应用场景
-
复杂性状解析:用于揭示控制复杂农艺性状(如产量、品质、抗病性等)的遗传基础,探索遗传学机理。
-
疾病抗性研究:发现与植物病害抗性相关的基因,为育种提供候选基因,其他性状也以此类推。
-
分子育种:辅助分子标记辅助选择(MAS)和基因组选择(GS)。
数据分析过程与原理
表型数据收集:精确、可靠的表型测定是关键。需在多环境、多重复下评估表型特征等数据,以减少环境误差。
基因型数据获取:利用SNP芯片或高通量测序技术获取全基因组SNP数据。
数据质量控制(QC)
-
标记过滤:删除缺失率高、次等位基因频率(MAF)低、偏离哈迪-温伯格平衡的SNP。 -
个体过滤:剔除基因型缺失率高或有杂合度异常的个体。
群体结构和亲缘关系分析
-
主成分分析(PCA):识别和校正群体结构。 -
STRUCTURE或ADMIXTURE分析:确定群体的组分。 -
亲缘关系矩阵(Kinship Matrix):估计个体间的亲缘关系。
关联分析模型构建
一般线性模型(GLM):y=Xβ+ϵ
-
y:表型值向量 -
X:基因型矩阵 -
β:效应量向量 -
ϵ:误差项
GLM未考虑群体结构易产生假阳性
混合线性模型(MLM):y=Xβ+Zu+ϵ
-
Z:随机效应的设计矩阵 -
u:随机效应向量,通常包括亲缘关系
MLM同时考虑了群体结构和亲缘关系,降低了假阳性率。
混合线性模型的原理
在全基因组关联分析(GWAS)中,混合线性模型(MLM)是一种广泛应用的统计方法,用于控制群体结构和亲缘关系对关联分析的干扰。MLM通过同时考虑固定效应和随机效应,提高了关联分析的准确性和可靠性。
基本概念
-
固定效应(Fixed Effects):指感兴趣的因素,其效应是固定的、可重复的。在GWAS中,通常是SNP的基因型效应和群体结构等协变量。 -
随机效应(Random Effects):指来自总体的随机样本,其效应是随机的、不可重复的。在GWAS中,个体间的亲缘关系被视为随机效应。
模型构建
MLM的基本形式:y=Xβ+Zu+ϵ
-
y:表示个体的表型值(向量长度与个体数相同) -
x:固定效应矩阵,包括截距、SNP基因型和协变量(例如群体结构等组分) -
β:固定效应系数向量,通过统计估计计算而得 -
Z:随机效应矩阵,通常为亲缘关系矩阵 -
u:随机效应向量,服从正态分布 -
ϵ:残差向量
固定效应部分(𝑋β):解释了SNP基因型和协变量对表型的线性效应。
随机效应部分(𝑍𝑢):捕捉了个体间由于亲缘关系导致的表型相似性。
误差项(𝜖):无法解释的随机误差。
亲缘关系矩阵(Kinship Matrix)
描述了个体间的遗传相似性,通常通过基因型数据计算,公式如下:
公式左边K表示个体的亲缘关系系数,m表示总的SNP数量,g表示SNP等位基因的编码,p表示SNP等位基因的频率。
举例
用一个简单的示例来解释吧,假设我们有一个研究,目标是寻找影响植物株高的基因位点。我们有10个样本,每个样本都有测量的高度和一个SNP的基因型数据。例如1号样本株高121CM,SNP基因型为0,2号样本株高97CM,SNP基因型为1
接下来构建一个模型,包括固定效应(由SNP引起的基因型效应)和随机效应(由个体亲缘关系引起的效应)
Step 1:构建固定效应设计矩阵𝑋
第一列为截距项,第二列为SNP基因型编码,这是一个10行2列行矩阵。
Step 2:计算亲缘关系矩阵𝐾
由于示例样本简单数量少,我们假设个体间的亲缘关系均等,即𝐾为单位矩阵(每个元素都为1的矩阵,10行×10列单位矩阵)
Step 3:应用MLM进行分析
使用软件(如R中的lme4包)进行参数估计,得到效应的估计值。
结果解释
固定效应估计:截距项是植株的基础高度,SNP效应是斜率,固定效应部分告诉我们,SNP基因型与植物高度之间是否存在关联。随机效应部分控制了个体间由于遗传背景相似性导致的高度相似,避免将这种相似性误认为是SNP的效应。
混合线性模型(MLM)在GWAS中起着关键作用,通过同时考虑固定效应和随机效应,MLM能够有效地控制群体结构和亲缘关系对关联分析的干扰。理解MLM的原理和细节,有助于研究者正确应用该模型,提高关联分析的准确性。
多重检验校正
-
Bonferroni校正:严格控制假阳性,但过于保守。 -
FDR(False Discovery Rate)控制:如Benjamini-Hochberg方法,平衡了假阳性和假阴性。
结果可视化和解释
曼哈顿图:展示每个SNP的关联显著性,直观识别显著关联区域。
QQ图(Quantile-Quantile Plot):评估模型是否存在系统性偏差。
候选基因挖掘
-
连锁不平衡块分析:确定显著SNP所在的LD区域。
-
基因注释和功能预测:结合基因组注释,筛选可能的候选基因。 -
生物学验证:通过qPCR、基因编辑等手段验证候选基因功能。
注意事项
样本量和统计功效:足够大的样本量有助于检测小效应基因。
环境互作效应:考虑基因×环境(G×E)互作,提高关联分析的准确性。
遗传背景复杂性:在多倍体植物如小麦中,基因组复杂,需要更精细的分析方法。
GWAS的优点
-
高通量性:能够在全基因组范围内同时分析数百万个SNP。 -
无偏见性:无需预先设定候选基因或区域,具有探索性。 -
高分辨率:在连锁不平衡的基础上,可以精细定位关联信号。
GWAS的缺点
-
多重检验问题:大量的统计检验增加了假阳性率,需要严格的校正,降低了检测功效。 -
群体结构干扰:未校正的群体结构可能导致假关联。 -
效应大小限制:对小效应等位基因的检测能力有限,需更大样本量。
GWAS是一种强有力的工具,可用于关键基因的挖掘。然而,其有效性取决于高质量的表型和基因型数据、适当的统计模型以及对多重检验和群体结构的校正。理解其原理、优势和局限性,有助于更有效地设计研究、解释结果,并将发现应用于实际育种中。
参考文献:
Yu et al., 2006. A unified mixed-model method for association mapping that accounts for multiple levels of relatedness.
Price et al., 2006. Principal components analysis corrects for stratification in genome-wide association studies.
Wang et al., 2014. Genomic association mapping of quantitative traits in plants.
Yu, J., et al. (2006). A unified mixed-model method for association mapping that accounts for multiple levels of relatedness. Nature Genetics, 38(2), 203-208.
Zhang, Z., et al. (2010). Mixed linear model approach adapted for genome-wide association studies. Nature Genetics, 42(4), 355-360.
Bradbury, P. J., et al. (2007). TASSEL: software for association mapping of complex traits in diverse samples. Bioinformatics, 23(19), 2633-2635.
Lipka, A. E., et al. (2012). GAPIT: genome association and prediction integrated tool. Bioinformatics, 28(18), 2397-2399.
本文由 mdnice 多平台发布
相关文章:
什么是GWAS全基因组关联分析?
什么是全基因组关联分析?(Genome-Wide Association Study,GWAS) 全基因组关联分析(GWAS)是一种在全基因组范围内搜索遗传变异(通常是单核苷酸多态性,SNP)与复杂性状之间关…...
k8s dashboard token 生成/获取
创建示例用户 在本指南中,我们将了解如何使用 Kubernetes 的服务帐户机制创建新用户、授予该用户管理员权限并使用与该用户绑定的承载令牌登录仪表板。 对于以下每个和的代码片段ServiceAccount,ClusterRoleBinding您都应该将它们复制到新的清单文件(如)…...
windows@openssh免密登陆配置@基于powershell快速配置脚本
文章目录 abstract免密自动登录配置介绍👺修改Server配置文件一键脚本修改👺 向ssh server端上传或创建支持免密登录的公钥文件预执行命令👺方式1方式2重启服务以生效👺 傻瓜式配置免密自动登录👺👺准备 操…...
【深度学习】【图像分类】【OnnxRuntime】【Python】VggNet模型部署
【深度学习】【图像分类】【OnnxRuntime】【Python】VggNet模型部署 提示:博主取舍了很多大佬的博文并亲测有效,分享笔记邀大家共同学习讨论 文章目录 【深度学习】【图像分类】【OnnxRuntime】【Python】VggNet模型部署前言Windows平台搭建依赖环境模型转换--pytorch转onnxONN…...
手写排班日历
手写排班日历: 效果图: vue代码如下: <template><div class"YSPB"><div class"title">排班日历</div><div class"banner"><span classiconfont icon-youjiantou click&qu…...
SpringBoot多数据源配置
1、添加依赖 <!-- 数据库驱动 --><!--mysql--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql-connector-java.version}</version><scope>runtime</sco…...
影响画布微信小程序canvas及skyline和webview用户界面布局的关键流程
影响微信小程序画布canvas及skyline和webview用户界面布局的关键流程 目录 影响微信小程序画布canvas及skyline和webview用户界面布局的关键流程 一、微信小程序canvas开发流程 1.1、官方指南 1.2、客制化开发 第一步:在 WXML 中添加 canvas 组件 第二步&…...
MATLAB图像处理
MATLAB图像处理 MATLAB,作为美国MathWorks公司出品的商业数学软件,以其强大的矩阵运算能力和丰富的函数库,在图像处理领域得到了广泛的应用。MATLAB不仅提供了基础的图像处理功能,还通过图像处理工具箱(Image Process…...
【编程底层思考】性能监控和优化:JVM参数调优,诊断工具的使用等。JVM 调优和线上问题排查实战经验总结
JVM性能监控和优化是确保Java应用程序高效运行的关键环节。以下是一些JVM性能监控和优化的方法,以及使用诊断工具和实战经验的总结: 一、JVM参数调优: 堆大小设置 : - Xms:设置JVM启动时的初始堆大小。 - -Xmx:设置J…...
数据库的实施过程分析
在完成了数据库的逻辑结构设计和物理结构设计后,下一步就是将设计成果转化为现实,这一步骤被称为数据库的实施。数据库实施是数据库开发过程中至关重要的一环,它标志着从设计阶段向实际应用的过渡。本文将为你详细讲解数据库实施的各个关键步…...
【Kubernetes】常见面试题汇总(十二)
目录 36.简述 Kubernetes 的负载均衡器? 37.简述 Kubernetes 各模块如何与 APl Server 通信? 38.简述 Kubernetes Scheduler 作用及实现原理? 36.简述 Kubernetes 的负载均衡器? (1)负载均衡器是暴露服务…...
基于SpringBoot+Vue+MySQL的美术馆管理系统
系统展示 用户前台界面 管理员后台界面 系统背景 随着文化艺术产业的蓬勃发展,美术馆作为展示与传播艺术的重要场所,其管理工作变得日益复杂。为了提升美术馆的运营效率、优化参观体验并加强艺术品管理,我们开发了基于SpringBootVueMySQL的美…...
golang面试
算法: 1.提取二进制位最右边的 r i & (~i 1) 2.树上两个节点最远距离,先考虑头结点参与不参与。 3.暴力递归改dp。 1.确定暴力递归方式。 2.改记忆化搜索 3.严格表方式: 分析可变参数变化范围,参数数量决定表维度、 …...
基于"WT2605C的智能血压计:AI对话引领个性化健康管理新时代,健康守护随时在线
在当今快节奏的生活中,健康管理已成为我们日常不可或缺的一部分。随着科技的进步,智能设备正逐步融入我们的日常生活,为健康管理带来前所未有的便捷与智能化。今天,让我们共同探索WT2605C AI在线方案如何在血压计中发挥革命性作用…...
redis高级教程
一 关系型数据库和 NoSQL 数据库 数据库主要分为两大类:关系型数据库与 NoSQL 数据库 关系型数据库 ,是建立在关系模型基础上的数据库,其借助于集合代数等数学概念和方法来处理数据库中的数据主流的 MySQL 、 Oracle 、 MS SQL Server 和 D…...
prfm命令初探
1. 前言 在查看一段neon代码时,发现有如下片段,为使用汇编进行数据预取操作。这是一个新的知识点,记录一下学习过程。 __asm__ volatile("prfm pldl2keep,[%0, #8192] \n""prfm pldl1keep,[%0, #1024] \n":"r"…...
AI大模型需要学什么?怎么学?从零基础入门大模型(保姆级),从这开始出发!
一.初聊大模型 1.为什么要学习大模型? 在学习大模型之前,你不必担心自己缺乏相关知识或认为这太难。我坚信,只要你有学习的意愿并付出努力,你就能够掌握大模型,并能够用它们完成许多有意义的事情。在这个快速变化的时代…...
python自述3
Python 条件控制 if语句的一般形式如下所示: if condition_1: statement_block_1 elif condition_2: statement_block_2 else: statement_block_3 Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。 注意: 1、每个条件后面要使用冒号 :,表…...
Redis常见的数据结构
Redis底层的数据结构是Redis高效存储和操作数据的基础,Redis提供了五种基本的数据类型,每种类型在底层都有对应的数据结构来实现。这五种数据类型分别是:字符串(String)、哈希(Hash)、列表(List…...
批量插入insert到SQLServer数据库,BigDecimal精度丢失解决办法,不动代码,从驱动层面解决
概述 相信很多人都遇到过,使用sql server数据库,批量插入数据时,BigDecimal类型出现丢失精度的问题,网上也有很多人给出过解决方案,但一般都要修改应用代码,不推荐。 丢失精度的本质是官方的驱动有BUG造成…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...
Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...
云原生玩法三问:构建自定义开发环境
云原生玩法三问:构建自定义开发环境 引言 临时运维一个古董项目,无文档,无环境,无交接人,俗称三无。 运行设备的环境老,本地环境版本高,ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...
uniapp 开发ios, xcode 提交app store connect 和 testflight内测
uniapp 中配置 配置manifest 文档:manifest.json 应用配置 | uni-app官网 hbuilderx中本地打包 下载IOS最新SDK 开发环境 | uni小程序SDK hbulderx 版本号:4.66 对应的sdk版本 4.66 两者必须一致 本地打包的资源导入到SDK 导入资源 | uni小程序SDK …...
