用组装出来的线粒体序列call SNP

本文的做法不合理,这里仅做流程的记录

想用线粒体基因组建一个树,看一下系统发生关系。

一个思路是从文献中看到的,将线粒体序列的13个蛋白编码基因分别先mafft比对,然后再串联到一起建树

另一个思路用线粒体基因组call SNP,详情见下图

第一种做法是用个体的重测序文件比对到参考(线粒体)基因组上;这种做法是合适的,一切流程都和正常的call SNP相同,只是换了个参考基因组。

第二种是本文所用,是用重测序文件组装出来的线粒体序列比对到参考(线粒体)基因组上,这种做法不合理,仅在此处做一个记录

0.用getorganelle组装线粒体序列

详情见https://github.com/Kinggerm/GetOrganelle

1.比对到参考基因组上(bwa mem,用bwa aln的话call不出来,原因不明)

for i in {xxx}  这部分下面省略

do

bwa mem -t 4 -R "@RG/tID:$i/tPL:illumina/tSM:$i/tLB:$i"  ref.fasta $i.fasta | samtools view -bS- > $i.bam

done

tID和tSM和tLB要保持一致,这里设置的是 个体名,否则call不出来,原因暂不明。tPL即测序平台。

2.排序、标记重复序列、建索引

samtools sort -@ 3 $i.bam -o $i.sorted.bam

gatk MarkDuplicates -I $i.sorted.bam -O $i.sorted.markdup.bam -M $i.sorted.markdup_metrics.txt

samtools index $i.sorted.markdup.bam

http://www.360doc.com/content/19/1224/14/68068867_881793271.shtml 标记重复序列的意义与作用,-M参数即把标记到的重复序列输出

3.call SNP

samtools mpileup 1.bam 2.bam… -f ref.fasta –gD –o test.bcf

bcftools view test.bcf > test.vcf  这两行代码的作用和 bcftools mpileup等效

bcftools call test.vcf -c  -v -o end.vcf 

这行代码的作用见下图,参考自https://www.bioinfo-scrounger.com/archives/248/

另外,用gatk就call不出来,所以换成了bcftools

最后得到了end.vcf便是结果,因为这种做法用到的线粒体序列数据很小,一个个体一百多kb,所以没有进行过滤

画了一个PCA的图

版权声明:
作者:zhangchen
链接:https://www.techfm.club/p/56002.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>