bcftools not calling high depth ALT allele

Open
#1,276 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
c

Research direction

Reproduce the discrepancy using the posted bcftools mpileup and call commands, comparing the I16, DP4, PL, ALT, and GT fields at the reported position. Investigate how low mapping quality affects the multiallelic caller; done means determining whether the 0/0 result is expected or identifying a reproducible bug and its required behavior.

Written by the indexing model from the issue text.

Description

needs-feedback

Hello, I am having trouble getting bcftools to call the ALT allele with 61 DP4 depth, it instead is only showing the REF call with 0 DP4 read depth.

The ALT call is correctly identified in the 'bcftools mpileup' output (shown below) where the I16 field shows 0 REF reads and 61 ALT reads, and based on what I understand about the PL output, mpileup identified the correct genotype with the best match being G/G, but these results do not carry over to the 'bcftools call' output, which says the genotype is C/C even though there are 0 DP4 reads supporting this genotype.

I am using bcftools version 1.10.2-105-g7cd83b7

I have tried fiddling with many settings, but have not been able to resolve this issue. At this point I am not sure if I am missing a setting that causes 'bcftools call' to completely ignore the ALT call, or if it is a bug or something else. Any help would be greatly appreciated.

I can supply sequence and reference files to replicate.

BCFTOOLS MPILEUP
command: bcftools mpileup -m 3 --threads 60 -d 500 -F 0.0002 -f alleleReference.fasta IND00040.sorted.bam -T alleleReference.bed -O v -o IND00040.vcf

----- mpileup output
KIR2DL1*0020101 4522 . C G,T,<*> 0 . DP=92;I16=0,0,33,28,0,0,2055,80321,0,0,186,826,0,0,1193,27631;QS=0,0.971631,0.0283688,0;VDB=0.999999;SGB=-0.693147;MQSB=0.910046;MQ0F=0.0434783 PL 14,181,0,17,166,14,14,181,17,14

BCFTOOLS CALL
command: bcftools mpileup -m 3 --threads 60 -d 500 -F 0.0002 -f alleleReference.fasta IND00040.sorted.bam -T alleleReference.bed | bcftools call --multiallelic-caller -O v -o IND00040.vcf
----- call output
KIR2DL1*0020101 4522 . C . 15.3772 . DP=92;VDB=0.999999;SGB=-0.693147;MQSB=0.910046;MQ0F=0.0434783;AN=2;DP4=0,0,33,28;MQ=3 GT 0/0

Again, the 'G' in the mpileup output should be the correct base for this position, but it is completely missing from the bcftools call output. I also tried without the -m3 and -F0.0002 options, but the results were the same.

** edit **
It looks like the 0/0 genotype calls are specific to positions with low MQ, but I do not see any settings in bcftools call to adjust that behavior.

Dominant language
C
Stars
891
Forks
277
Avg merge
2d 23h
Merged PRs (30d)
2

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from samtools/bcftools

All issues in samtools/bcftools

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.