代码主要参考 GraffiTE 的代码,链接https://github.com/cgroza/GraffiTE/blob/main/main.nf这个工具是利用二代测序数据给TE做基因型分型然后研究TE多态性的。前面的步骤是基于组装好的基因组进行比对检测结构变异。我们把这部分代码拆出来学习一下。
使用拟南芥的数据集做测试
minimap2比对
代码语言:javascript复制minimap2 -ax asm5 --cs -r2k -t 16 ../Cvi.chr.all.v2.0.fasta ../Kyo.chr.all.v2.0.fasta | samtools sort -@ 8 -O BAM -o Kyo.sorted.bam
minimap2 -ax asm5 --cs -r2k -t 16 ../Cvi.chr.all.v2.0.fasta ../Ler.chr.all.v2.0.fasta | samtools sort -@ 8 -O BAM -o Ler.sorted.bam
minimap2 -ax asm5 --cs -r2k -t 16 ../Cvi.chr.all.v2.0.fasta ../Sha.chr.all.v2.0.fasta | samtools sort -@ 8 -O BAM -o Sha.sorted.bam
代码语言:javascript复制samtools index Kyo.sorted.bam
samtools index Ler.sorted.bam
samtools index Sha.sorted.bam
检测结构变异
代码语言:javascript复制svim-asm haploid --min_sv_size 50 --types INS,DEL,INV --sample Ler Ler Ler.sorted.bam ../Cvi.chr.all.v2.0.fasta
svim-asm haploid --min_sv_size 50 --types INS,DEL,INV --sample Kyo Kyo Kyo.sorted.bam ../Cvi.chr.all.v2.0.fasta
svim-asm haploid --min_sv_size 50 --types INS,DEL,INV --sample Sha Sha Sha.sorted.bam ../Cvi.chr.all.v2.0.fasta
合并vcf文件
代码语言:javascript复制cp Kyo/variants.vcf output.vcfs/kyo.vcf
cp Ler/variants.vcf output.vcfs/ler.vcf
cp Ler/variants.vcf output.vcfs/ler.vcf
代码语言:javascript复制ls output.vcfs/*.vcf > vcf.list
SURVIVOR merge vcf.list 0.1 0 1 0 0 100 svim_asm_variants.vcf