重复一篇文献的GWAS(二):用GEMMA跑GWAS

上一篇写的是:重复一篇文献的GWAS(一):基因型数据整理
这一篇主要讲GWAS的核心流程和画图。

软件使用参考:
使用GEMMA进行复杂性状全基因组关联分析(GWAS)
https://www.jianshu.com/p/d31404620c9b
github
https://github.com/genetics-statistics/GEMMA
https://github.com/genetics-statistics/GEMMA/blob/master/doc/manual.pdf

1. 将ped/map转换为fam/bed/bim
plink --file 172sample_maf_filter_snpID_LD_filter --make-bed --out clean_snp
#172sample_maf_filter_snpID_LD_filter是map,ped文件的前缀,会生成以clean_snp为前缀以bed, bim, fam结尾的三个文件

以上几个文件格式需要熟悉一下。

2. 修改表型文件

前面没有输入表型信息,172sample_maf_filter_snpID_LD_filter.ped文件和clean_snp.fam文件的第6列都是-9,默认值。所有样本的表型值在文献补充材料中都能找到,注意样本顺序替换表型值即可。

3. 生成kinship(亲缘关系)矩阵
nohup gemma -bfile clean_snp -gk -o kinship &
#gk参数可以指定kinship矩阵的类型,默认是1

$ tree ./output/
./output/
├── kinship.cXX.txt
└── kinship.log.txt
4. 单变量的混合线性模型

文献描述:A GWAS for seed area was conducted using a univariate mixed linear model method (LMM) in GEMMA software using the default parameters

混合线性模型既考虑了群体分层,也考虑了样本之间的关系。

nohup gemma -bfile clean_snp -lmm -k ./output/kinship.cXX.txt -o GWAS &

$ tree output/
output/
├── GWAS.assoc.txt
├── GWAS.log.txt
├── kinship.cXX.txt
└── kinship.log.txt

$ lsx GWAS.assoc.txt | head -n 5
chr rs  ps  n_miss  allele1 allele0 af  beta    se  logl_H1 l_remle p_wald
1   1_63    63  0   C   T   0.064   -1.706603e-03   3.725438e-03    3.910054e+02    5.240987e+00    6.474695e-01
1   1_92    92  0   C   A   0.401   4.789343e-04    1.974829e-03    3.909931e+02    6.030706e+00    8.086701e-01
1   1_138   138 0   C   T   0.064   8.253728e-03    4.108313e-03    3.929843e+02    4.610281e+00    4.611623e-02
1   1_266   266 0   A   G   0.064   4.685363e-03    4.019586e-03    3.916598e+02    5.506291e+00    2.453956e-01

上述GWAS.assoc.txt文件就是我们需要的结果,可以用来做判断以及画图。但是p值应该如何确定呢?

5. p值选择

Bonferroni-corrected:0.05除以标记数,以此作为显著水平线。原文是1.5E-07,我这里是1.49E-07。换句话说就是,原来的p值乘以标记数仍然能小于0.05的就符合要求。

到这儿我看了一下,和原文结果有一些出入,可能原因是:19个样本缺失导致;前面用LD过滤,可能在同一个LD block中原文留下的是A点,我留下的是B点,导致位置有偏差。

6. 换一个工具跑一下

使用rMVP包

> library(rMVP)
> MVP.Data(fileBed="clean_snp",filePhe="clean_value.txt",fileKin=TRUE,filePC=TRUE,out="mvp")
#clean_snp为plink二进制文件的前缀,clean_value.txt为样本与表型值的对应关系

会生成GWAS分析的所有数据文件,以及PCA作图的文件

$ ls mvp.*
mvp.geno.bin  mvp.geno.desc  mvp.geno.ind  mvp.geno.map  mvp.kin.bin  mvp.kin.desc  mvp.pc.bin  mvp.pc.desc  mvp.phe

读取这些文件

> pheno <- read.table("mvp.phe", header = TRUE)   
> geno <- attach.big.matrix("mvp.geno.desc")    
> map <- read.table("mvp.geno.map", header = TRUE)   
> Kinship <- attach.big.matrix("mvp.kin.desc")
> Covariates <- attach.big.matrix("mvp.pc.desc")

运行程序,此处计算方差组分的方法是"EMMA"

> MVP(phe=pheno,geno=geno,map=map,K=Kinship,CV.MLM=Covariates,priority="speed",vc.method="EMMA",method=c("MLM"))

我将两次(一次是严格按照文献步骤--GEMMA软件,一次是用MVP包--EMMA算法)的结果取top 100 SNPs看交集,可以看到70%的重叠。我认为这个重叠还算合理,所以觉得我前面的分析问题不大,和原文献有差别的原因可能是:①19样本缺失;②根据LD过滤后余下的SNP有差异(因为对于原文找到的top SNPs来看,在我过滤得到的335.6K的SNP中基本找不到)

尽管文献的结果没有重复出来,形式还是要走的嘛!

接下来画图。

7. 画图

文献中,关于GWAS这一块的图有:①所有样本地理位置与种子大小的图;②样本表型值的概率密度图与直方图;③曼哈顿图;④top SNPs的累积效应图。

①、④还没有画过,有时间补一下;②之前写过——正态分布检验,QQ图的原理也在这一篇中写过;这里画一下曼哈顿图和QQ图。

曼哈顿图、QQ图

$ head -n 4 for_mvp.txt 
rs  chr pos seed_size
1_63    1   63  6.474695e-01
1_92    1   92  8.086701e-01
1_138   1   138 4.611623e-02
> library(rMVP)
> df <- read.table("for_mvp.txt",header=T,sep="\t")
> MVP.Report(df,plot.type="m",LOG10=TRUE,threshold=0.05/nrow(df),threshold.lty=2,threshold.lwd=1,threshold.col="grey",amplify=TRUE,col=c("dodgerblue4","deepskyblue"),signal.col="red",cex=0.7,chr.den.col=NULL,file="pdf",memo="",dpi=600)
> MVP.Report(df,plot.type="q",conf.int.col=NULL,box=TRUE,file="pdf",dpi=600)
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,417评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,921评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,850评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,945评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,069评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,188评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,239评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,994评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,409评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,735评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,898评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,578评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,205评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,916评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,156评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,722评论 2 363
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,781评论 2 351

推荐阅读更多精彩内容