使用Minimac進行基因型填充

  • 2019 年 12 月 19 日
  • 筆記

Minimac是一款經典的基因型填充軟體,該軟體也是以記憶體消耗小,運行速度快而著稱,歷經了MaCH, minimac, minimac2, minmac3多個版本的更新換代,目前最新版本為v4, 網址如下

https://genome.sph.umich.edu/wiki/Minimac4

源程式碼保存在github上,網址如下

https://github.com/statgen/Minimac4

為了減少記憶體消耗,和beagle軟體類似,minimac提出了一種名為M3VCF的格式,用來存儲referenc panel的單倍型資訊,將單倍型劃分為不同的block, 示意如下

上圖表示的是9個SNP位點構成的8種單倍型,minimac會根據染色體位置劃分成不同的block區間,識別block區間內的unique haplotypes。兩個鄰近的block區域必須有一個重疊的位點,圖中的9個位點劃分成了兩個block, 1-6號位點對應block B, 6到9號位點對應block B+1。在block B中,有3種唯一的單倍型,對應三種不同顏色。

M3VCF的內容示意如下

和VCF格式類似,在每個blcok的開頭會有一行用於顯示block的資訊,包含的變異位點數VARIANTS,unique haplotype的個數REPS等,詳細的介紹請參考以下鏈接

https://genome.sph.umich.edu/wiki/M3VCF_Files

相比VCF格式,該格式磁碟佔用小,讀取速度更快,記憶體消耗小。官網提供了1000G的reference panel供下載,鏈接如下

https://genome.sph.umich.edu/wiki/Minimac4#Reference_Panels_for_Download

該軟體推薦的基因型填充pipeline步驟如下

  1. study樣本分型結果的品質控制,參考GWAS的質控條件
  2. 對質控後的分型結果進行pre-phasing, 支援MACH和shapeit兩個軟體的結果
  3. 將pre-phasing的結果轉化成VCF格式
  4. 選擇reference panel,推薦1000G或者HRC
  5. 進行填充

實際操作中典型的用法如下

1. pre-phasing

以MACH為例,用法如下

mach1   -d Gwas.chr20.Unphased.dat   -p Gwas.chr20.Unphased.ped   --rounds 20   --states 200   --phase   --interim 5   --sample 5   --prefix Gwas.Chr20.Phased.Output

MACH要求輸入的分型結果格式為dat和ped格式,詳細的解釋參見以下鏈接

http://csg.sph.umich.edu/abecasis/Merlin/tour/input_files.html

2. convert to vcf

通過MACH2VCF進行格式轉換,用法如下

mach2VCF   --haps Gwas.Chr20.Phased.Output.hap   --snps Gwas.Chr20.Phased.Output.snps   --prefix Gwas.Chr20.Phased.Output.VCF.Format

該腳本可以從以下鏈接下載

ftp://share.sph.umich.edu/minimac3/Mach2VCF.v1.Source.Binary.tar.gz

3. impute

採用minimac4進行填充,用法如下

minimac4   --refHaps refPanel.m3vcf   --haps Gwas.Chr20.Phased.Output.VCF.Format.vcf   --prefix testRun   --cpus 5

minimac4會自動將染色體拆分成不同的區間,在結合多執行緒,可以大大提高運行速度。