使用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種格式
- ped/map
- bed/bim/fam
- gen/sample
- 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對需要填充的樣本進行單倍型分析。