使用shapeit進行單倍型分析

  • 2019 年 12 月 19 日
  • 筆記

shapeit是一款單倍型分析工具,運算速度快,準確率高,是impute2官方推薦的pre-phasing工具,官網如下

http://mathgen.stats.ox.ac.uk/genetics_software/shapeit/shapeit.html

對應的文獻發表在nature method上,鏈接如下

https://www.nature.com/articles/nmeth.1785

通過隱馬可夫模型來分析單倍型,簡化的模型示意如下

從上到下依次有5個子圖,用1到5來表示,需要分成3個部分來看。在1圖中,表示的是8個位點構成的8種單倍型,每行表示一個單倍型,每一列代表一個位點,2圖中用圖狀結構來表示上述的單倍型,每個節點表示一個SNP位點,依次用Z1到Z8表示,從1到8的完整路徑代表一個單倍型。觀察圖1可以發現,前4個位點只有3種組成,後4個位點也是同樣的,通過4號位點和5號位點的不同連線可以表示所有的單倍型,每條邊上的數字代表對應的頻數。

圖5表示的是某個樣本的分型結果,分別用0,1,2表示不同的狀態,0表示沒有突變,1表示雜合突變,2表示純合突變,根據分型結果拆分成單倍型的時候,雜合突變對應2個allel, 根據這個分型結果可以得到圖4中對應的單倍型構成,圖4中ref allel用空白方框表示,alt allel用黑色方框表示,對於前5個位點,存在了2個雜合突變,所以有4種路徑,後3個位點也是4種。

圖3表示的是該軟體的隱馬可夫模型,將真實的單倍型當做是隱藏序列,將根據分型結果預測的單倍型當做是觀察序列,通過建模之後來分析隱藏序列的組成,就得到了真實的單倍型分析結果。

在文獻中,將該軟體與其他類似的工具進行了比較,結果示意如下

採用了3個不同的數據集,比較了運行時間和錯誤率,shapeit錯誤率最低,運行速度最快。

該軟體的基本用法如下

shapeit   --input-bed gwas.bed gwas.bim gwas.fam   --input-map genetic_map.txt   --output-max gwas.phased.haps gwas.phased.sample  --thread 8

需要指定的參數分成了以下3個部分

1. input unphased genotypes

支援以下3種格式

  1. ped/map
  2. bed/bim/fam
  3. gen/sample
  4. vcf

前兩種為plink軟體的格式,是GWAS分析最常見的文件格式,第三種格式是WTCCC默認的文件格式 第四種是最常見的VCF格式。

不同類型的輸入文件對應的用法如下

shapeit   --input-ped gwas.ped gwas.map   -M genetic_map.txt   --missing-code N   -O gwas.phased    shapeit   --input-bed gwas.bed gwas.bim gwas.fam   -M genetic_map.txt   -O gwas.phased    shapeit   --input-gen gwas   -M genetic_map.txt   -O gwas.phased    shapeit   --input-vcf gwas.vcf   -M genetic_map.txt   -O gwas.phased

對於gen/sample文件格式,可以通過gtool這個軟體來進行格式轉換,

2. genetic map

參考基因組對應的連鎖圖譜,可以提高單倍型分析的準確性,官方提供了hapmap項目的連鎖圖譜供下載,鏈接如下

http://mathgen.stats.ox.ac.uk/genetics_software/shapeit/shapeit.html#formats

這個是一個可選參數,沒有的情況下軟體會根據線性模型來進行估算。

3. output phased haplotypes

默認用後綴為haps和sample的兩個文件來描述單倍型, haps文件的內容如下所示

每列之間用空格分隔,第一列為snp位點所在的染色體名稱,第二列為snp id,第三列為染色體的位置,第四列為不同樣本中該位點的分型結果,0代表ref allle, 1代表alt allel, 每兩列對應一個樣本。

後綴為sample的文件內容如下所示

用來描述樣本的資訊,同樣的空格分隔,前兩行內容固定,後續每一行代表一個樣本,以上只是該文件最基本內容的展示,還可以有更多的列,用來描述樣本的表型資訊。

在impute2中,phased reference panel會用hap/legend/sample3個文件來表示,通過下列代表可以進行格式轉換

shapeit   -convert   --input-haps gwas.phased   --output-ref gwas.phased.hap gwas.phased.leg gwas.phased.sam

不同格式的詳細解釋參考以下鏈接

http://mathgen.stats.ox.ac.uk/genetics_software/shapeit/shapeit.html#formats

事先對需要填充的樣本進行phasing, 可以有效提高填充的運行效率,如果後續使用impute2進行基因型填充,推薦使用shapeit對需要填充的樣本進行單倍型分析。