freebayes快速群體call snp流程優(yōu)化

過濾和比對沒什么好說的,fastp + bwa足夠

重點是call snp這塊,GATK作為精度最高的東西,運行速度也是最慢的,卡的要死。有人提出可以使用freebayes進(jìn)行快速snp calling。 然而freebayes如果運用不當(dāng),可以成為比gatk更卡的東西

那么如何使用freebayes提速,發(fā)揮他真正的實力呢?

重點有2,一個是參數(shù)選對,一個是切片。

先說最簡單的,切片,對參考基因組進(jìn)行分割,然后call指定位點的變異,這個freebayes提供了軟件內(nèi)部的腳本fasta_generate_regions.py

python fasta_generate_regions.py x.fasta 1000000 > x.bed

按100Mb的窗口大小切割然后call的時候用這個生成腳本加到-r 參數(shù)后面就行

其次是加一些特定參數(shù)提高運行速度,一個是-g 1000 去掉coverage 大于1000 計算量很大但是沒什么有用結(jié)果的地方;然后是--use-best-n-alleles 4 去掉一些complex的情況。

100個樣本在60核250RAM的情況下,應(yīng)該可以在一天內(nèi)結(jié)束calling。 之后可以使用vcftools進(jìn)行合并,vcffilter過濾出高質(zhì)量snp位點,再使用vcftools進(jìn)行過濾。

合并:vcf-concat *.vcf > combined.vcf

過濾indel和complex: cat combined.vcf | vcffilter -f "TYPE = snp" > x.snp.vcf

vcftools進(jìn)一步過濾: vcftools --remove-indels --recode --recode-INFO-all --vcf x.snp.vcf --maf 0.05 --minDP 5 --maxDP 50 --minGQ 20 --hwe 0.001 --max-missing 0.8 --stdout > final.snp.vcf

最后再進(jìn)行bgzip和tabix即可得到最終用于下游分析的VCF文件

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容