GWAS分析基本流程及分析思路
数据预处理(DNA genotyping、Quality control、Imputation)
QC的工作可以做PLINK上完成Imputation的工作用IMPUTE2完成
2. 表型数据统计分析
逻辑回归(表型数据为二元)
线性回归(表型数据为连续性变量)
表型数据正态分析(如果不是正态分布,需转换处理为正态分布)
表型数据均值、中值、最大值、最小值
影响因子对表型的影响分析
3.画曼哈顿图(GWAS)和QQ plot图
(一)、准备plink文件
(1)、准备PED文件
PED文件有六列,六列内容如下:Family IDIndividual IDPaternal IDMaternal IDSex (1=male; 2=female; other=unknown)PhenotypePED文件是空格(空格或制表符)分隔的文件。
(2)、准备MAP文件
MAP文件有四列,四列内容如下:chromosome (1-22, X, Y or 0 if unplaced)rs# or snp identifierGenetic distance (morgans)Base-pair position (bp units)
(3)、生成bed、fam、bim、文件
在plink中输入命令:plink --file mydata --out mydata --make-bedplink指的是plink软件,如果软件安装在某个指定的路径的话,前面还要加上路径,比如安装在路径为/your/pathway/的文件夹下,则命令应该为“/your/pathway/plink --file mydata --out mydata --make-bed”mydata指的是1和2生成的PED和MAP文件名,不需要写.ped和.map后缀(二)、准备表型文件(Alternate phenotype files)
一般表型文件为txt格式,表型文件有三列,分别为:Family IDIndividual IDPhenotype假如有多种表型,第一列和第二列还是Family ID、Individual ID,第三列及以后的每列都是表型,例如以下:Family IDIndividual IDPhenotype APhenotype BPhenotype CPhenotype DPhenotype E……
(三)、准备协变量文件(Covariate files)
协变量文件同表型文件类似,第一列和第二列是Family ID、Individual ID,第三列及以后的每列都是协变量Family IDIndividual IDCovariate ACovariate BCovariate CCovariate DCovariate E……
(四)、plink进行表型和基因型以及协变量的关联分析
命令如下:plink --bfile mydata --linear --pheno pheno.txt --mpheno 1 --covar covar.txt --covar-number 1,2,3 --out mydata –noweb生成的文件为mydata.assoc.linear注:“mydata”mydata文件不需要后缀,“--mpheno 1”指的是表型文件的第三列(即第一个表型)“--covar-number 1,2,3”指的是协变量文件的第三列、第四列、第五列(即第一个、第二个、第三个协变量)“--linear”指的是用的连续型线性回归,如果表型为二项式(即0、1)类型,则用“--logistic”
(五)、画曼哈顿图(GWAS)图
安装R语言的CpGassoc包,其中的manhattan(),即可画曼哈顿图
(六)、画QQ plot图
R语言中的 qqnorm() 和 qqplot() 包提供了QQ plot的画法,具体自行搜索用法;
4. GWAS进阶分析
群体分层分析,Population Stratification
如果研究的群体是混合群体,遗传异质性高,存在群体分层现象,易造成实验的误差或者检测出假阳性位点。因此检测群体分层对效应值的影响是非常必要的。
不同群体重复验证分析,Replication
Regional association plots
用LocusZoom(http://csg.sph.umich.edu/locuszoom/)画出来的相似条件分析,Approximate conditional analysis
相似条件分析的目的是,去掉lead SNPs后,再跑一次GWAS关联分析,以此找到更多有强关联的信号。
连锁不平衡得分评估表型间遗传相关性,Linkage-disequilibrium score regression
遗传相关性 genetic correlation, 这是指在杂种群体表型间的相关性中,由基因型所产生的相关性。遗传相关是仅由遗传原因引起的相关。
基因富集分析,Gene setenrichment analysis
从文献,GTEX、 GEUVADIS等据数据找到与 Lead SNPs 关系很大的基因、变异等,以及与 Lead SNPs 连锁不平衡分析r2大于0.8的SNP,则这些SNP的基因可以作为候选基因。汇总了所有的候选基因后,在GOTERM、KEGG、Panther等数据库分析这些候选基因的富集分析。
层次聚类分析,Hierarchicalclustering
层次聚类分析的作用是更进一步看出研究的表型相关的 lead SNPs与其他表型的相关性;
蛋白质-蛋白质互作网络分析,Protein–proteininteraction network analyses
蛋白质互作网络的目的是看哪些蛋白共同调控了表型
Point ofcontact analyses
Point of contact analyses的作用是哪些位点导致了表型间有相关性
参考文献:
Horikoshi, Momoko, et al. "Genome-wide associations for birth weight and correlations with adult disease." Nature 538.7624 (2016): 248.
Okbay A, Beauchamp J P, Fontana M A, et al. Genome-wide association study identifies 74 loci associated with educational attainment[J]. Nature, 2016, 533(7604): 539.
GWAS分析基本流程及分析思路的更多相关文章
- Ecshop的购物流程代码分析详细说明
Ecshop的购物流程代码分析详细说明 (2012-07-30 10:41:12) 转载▼ 标签: 购物车 结算中心 商品价格 ecshop ecshop购物流程 杂谈 分类: ECSHOP研究院 同 ...
- Raid1源代码分析--写流程
正确写流程的总体步骤是,raid1接收上层的写bio,申请一个r1_bio结构,将其中的所有bios[]指向该bio.假设盘阵中有N块盘.然后克隆N份上层的bio结构,并分别将每个bios[]指向克隆 ...
- 通过官方API结合源码,如何分析程序流程
通过官方API结合源码,如何分析程序流程通过官方API找到我们关注的API的某个方法,然后把整个流程执行起来,然后在idea中,把我们关注的方法打上断点,然后通过Step Out,从内向外一层一层分析 ...
- Openfire注册流程代码分析
Openfire注册流程代码分析 一.客户端/服务端注册用户流程 经过主机连接消息确认后,客户端共发送俩条XML完成注册过程.服务器返回两条XML. 注:IQ消息节点用于处理用户的注册.好友.分组.获 ...
- Linux Kernel文件系统写I/O流程代码分析(二)bdi_writeback
Linux Kernel文件系统写I/O流程代码分析(二)bdi_writeback 上一篇# Linux Kernel文件系统写I/O流程代码分析(一),我们看到Buffered IO,写操作写入到 ...
- Linux Kernel文件系统写I/O流程代码分析(一)
Linux Kernel文件系统写I/O流程代码分析(一) 在Linux VFS机制简析(二)这篇博客上介绍了struct address_space_operations里底层文件系统需要实现的操作 ...
- Flink 源码解析 —— Standalone Session Cluster 启动流程深度分析之 Job Manager 启动
Job Manager 启动 https://t.zsxq.com/AurR3rN 博客 1.Flink 从0到1学习 -- Apache Flink 介绍 2.Flink 从0到1学习 -- Mac ...
- Flink 源码解析 —— Standalone Session Cluster 启动流程深度分析之 Task Manager 启动
Task Manager 启动 https://t.zsxq.com/qjEUFau 博客 1.Flink 从0到1学习 -- Apache Flink 介绍 2.Flink 从0到1学习 -- Ma ...
- Okhttp3源码解析(3)-Call分析(整体流程)
### 前言 前面我们讲了 [Okhttp的基本用法](https://www.jianshu.com/p/8e404d9c160f) [Okhttp3源码解析(1)-OkHttpClient分析]( ...
随机推荐
- Python 日志模块logging
logging模块: logging是一个日志记录模块,可以记录我们日常的操作. logging日志文件写入默认是gbk编码格式的,所以在查看时需要使用gbk的解码方式打开. logging日志等级: ...
- 【原】Java学习笔记011 - 数组
package cn.temptation; import java.util.Scanner; public class Sample01 { public static void main(Str ...
- c/c++ 网络编程 UDP 用if_nameindex和ioctl取得主机网络信息
网络编程 UDP 用if_nameindex和ioctl取得主机网络信息 getifaddrs函数取得的东西太多了,如果只想取得网卡名字和网卡编号可以用下面的2个函数. 1,if_nameindex ...
- idea 模板注释设置
一.首先我们来设置IDEA中类的模板: 1.File-->settings-->Editor-->File and Code Templates-->Files 我们选择Cla ...
- Linux shell 及命令汇总
1 文件管理命令 1.cat命令:将文件内容连接后传送到标准输出或重定向到文件 2.chmod命令:更改文件的访问权限 3.chown命令:更改文件的所有者 4.find命令:查找(符合条件)文件并将 ...
- https协议详解
HTTPS协议建立过程 1) 客户端首次发送请求时,由于客户端(浏览器等)对一些加解密算法的支持程度不一样,但是在TLS传输中必须使用相同的加解密算法,所以在TLS握手的阶段,客户端告诉服务器端自己支 ...
- DWH中增量数据的抽取
1. Truncate-Load 全量加载 简单直观.不易出错,适合数据量不太大的操作 性能问题 2. Increamental-Load 只考虑新增.修改.删除的记录 良好的数据源设计(主要是 ...
- 【PAT】A1034Head of a Gang
昨天准备学完图相关的知识,但是学起来挺懵的,理解起来不难,但自己一回想,又什么都想不起来. 翻来覆去看图的遍历,还是觉得有点没到位. 所以做题来检测一下,果然学和自己做是两码事. 先看的书,又看的柳婼 ...
- (转载)最完整的自动化测试流程:Python编写执行测试用例及定时自动发送最新测试报告邮件
今天笔者就要归纳总结下一整套测试流程,从无到有,实现零突破,包括如何编写测试用例,定时执行测试用例,查找最新生成的测试报告文件,自动发送最新测试报告邮件,一整套完整的测试流程.以后各位只要着重如何编写 ...
- flex布局justify-content属性和align-items属性设置
前言: flex最常用的就是justify-content和align-items了,这里把这两个属性介绍下,大家更多关于flex布局可以查看阮一峰的日志,写的非常清楚! 阮一峰flex布局的日志:h ...