我的GWAS学习笔记

上个月中旬,出于对GWAS的好奇,我参加了一个培训班,之后又花了一周的时间来整理听课笔记,感觉现在对GWAS已经有了一个比较全面的认识。

在call SNP之后,做GWAS之前,需要对数据做些什么?我前面的两篇笔记做了一些说明:
用Beagle做基因型填充
基因型填充之后如何过滤

0.小白眼中的GWAS

第一次听说GWAS是在统计课上,当时的认识是这样的:依次对成千上万个SNP位点,讨论不同基因型在有特定性状和没有特定性状的群体中的比例,做统计检验看是否有显著差异。比如,在某个位点上AA基因型在患病人群中存在的比例是90%,在健康人群中的比例为10%,卡方测验表明有显著差异,于是就推测该位点与该疾病关联。

现在看来,我上面这种理解应该是GWAS最简单的理解。实际情况比这个复杂很多,因此才发展出了很多模型和算法。

1.GWAS模型

群体结构(Q矩阵或主成分分析)
全基因组关联分析的理论基础是SNP标记与目的基因关联(LD),这里的SNP只是作为标记,本身是否有生物学意义还不知道。研究的群体可能内部还存在分层,有一些基因的频率在不同亚群之间就是不一样,LD也不相同。这些都需要校正。考虑了群体结构的模型称为一般线性模型(GLM)

个体间亲缘关系矩阵(Kinship)
用来校正群体内复杂的亲缘关系。用Kinship可以求得一个加性遗传效应值/育种值,以此作为随机效应。考虑了群体结构和Kinship的模型就是混合线性模型MLM

2.做一个GWAS分析

软件安装
Microsoft R Open
https://mran.microsoft.com/download
微软开发的R的增强版,在矩阵运算上要快很多,具体介绍见Microsoft R Open 简介

MVP
https://github.com/XiaoleiLiuBio/rMVP
一款很好用的GWAS分析软件
使用体验:整合了多种模型和算法;应对大数据(并行计算)更快;内存使用高效;出图美观;使用简单(基本上两步就可以得到结果;用vcf就可以,不需要转换各种格式)

# 安装 ----------------------------------------------------------------------
a <- installed.packages()
b <- a[,"Package"]
pkg <- setdiff(c("RcppEigen", "RcppProgress", "RcppArmadillo", "bigmemory"), b)
install.packages(pkg)
#这里批量安装R包的方法可以借鉴

setwd("E:\\Computational_Biologist\\生信积累\\培训\\GWAS.华农.2019.7\\软件包")
#getwd()
install.packages("rMVP_0.99.14.1.tar.gz", repos = NULL)
setwd("E:\\Computational_Biologist\\生信积累\\培训\\GWAS.华农.2019.7\\GWAS_test")
#这里采用github上面说明的第二种方法来安装

必须提供的有表型、基因型数据
亲缘关系矩阵、主成分作为选项,可提供,也可不提供程序可以自己算。如果只想算这两个,可以用函数MVP.Data.Kin、MVP.Data.PC

##Step1_a: 数据格式转换
#如果是从vcf文件开始该如何导入?
#假如我有test_imp_qc.vcf和test.phe两个文件,分别表示基因型文件和表型文件,其中表型文件第一列是样本ID,第二列是表型观测值
MVP.Data(filePhe = "test.phe", fileVCF = "test_imp_qc.vcf", out = "mytest")
#会生成5个文件
dir()         
[1] "mytest.geno.bin"  "mytest.geno.desc" "mytest.geno.ind"  "mytest.geno.map" 
[5] "mytest.phe"

##Step1_b: 读取转换好的数据
pheno <- read.table("mytest.phe", header = TRUE)       
#第一列是样本ID,其他列是性状的观测值
geno <- attach.big.matrix("mytest.geno.desc")         
#rMVP使用的基因型文件是 .geno.desc 和 .geno.bin 两个文件一组,前者储存的是元数据,后者是以二进制格式储存的基因型数据
map <- read.table("mytest.geno.map", header = TRUE)  
#3列,分别为SNP编号、chr、position

##Step2: 进行分析
mytest_mvp <- MVP(phe=pheno, geno=geno, map=map, method=c("GLM", "MLM", "FarmCPU"))
#自动出图,形式各样,总有一款适合你。这也太厉害了吧!
#而且返回了画图用到的数据表格,利用提供的单个的绘图函数,可以对图形做一些精修;当然也能用别的软件来再次画图;
str(mytest_mvp)

#我的发现:

#MVP()命令不能在Windows下面的RStudio运行,说无法生成矩阵,可以在MRO上面运行。我猜测RStudio上面不能运行大计算量的任务

#Linux下也能用MVP,需要预先安装MRO。参考前面提到的简书,"Microsoft R Open 简介",即用管理员的conda(自己的也可以)创建一个自己的conda环境,保存在~/.conda/envs/mro_env下面,切换环境,conda安装mro,进入mro,然后安装mvp,github上面两种安装方法都可以。

这款软件是这次培训的老师开发的,刚做完,还没有发文章,不过github上面已经有近80个star了,确实很好用

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容