This is a test version of Biostars. For the public version, visit https://www.biostars.org.
What does Number=0/Number=1 mean in a VCF?

I have a VCF file where in the INFO header I see Number=1 and Number=0. What does that mean? That one is printed and not the other?

  ##contig=<ID=scaffold49,length=3478500>
  ##ALT=<ID=*,Description="Represents allele(s) other t...
  ##INFO=<ID=INDEL,Number=0,Type=Flag,Description="Indicates that...
  ##INFO=<ID=IDV,Number=1,Type=Integer,Description="Maximum number...
  ##INFO=<ID=IMF,Number=1,Type=Float,Description="Maximum fraction ...
  ##INFO=<ID=DP,Number=1,Type=Integer,Description="Raw read depth">
  ##INFO=<ID=VDB,Number=1,Type=Float,Description="Variant Distance Bias for ...
  ##INFO=<ID=RPB,Number=1,Type=Float,Description="Mann-Whitney U test ...
  ##INFO=<ID=MQB,Number=1,Type=Float,Description="Mann-Whitney U test ...
  ##INFO=<ID=BQB,Number=1,Type=Float,Description="Mann-Whitney U test ...
  ##INFO=<ID=MQSB,Number=1,Type=Float,Description="Mann-Whitney U test ...
  ##INFO=<ID=SGB,Number=1,Type=Float,Description="Segregation based metric.">
  ##INFO=<ID=MQ0F,Number=1,Type=Float,Description="Fraction of MQ0 reads (smaller is better)">
...

Why in the INFO column, I can't see INDEL, IDV, IMF and that it starts at DP?

   #CHROM         POS     ID      REF     ALT     QUAL    FILTER  INFO                      ...
  scaffold440     420     .       T       G       999     .       DP=175;VDB=4.12831e-08;SGB=14.3961;RPB=0.362442;MQB=0.00113257;MQSB=6.33575e-07;BQB=0.21253;MQ0F=0;AF1=0.07
  scaffold440     451     .       C       A       999     .       DP=174;VDB=2.7432e-08;SGB=4.37813;RPB=0.00386186;MQB=0.259306;MQSB=1.3575e-06;BQB=0.237116;MQ0F=0;AF1=0.102
vcf dna gwas

1 answer

The VCF format is kind of all over the place. The fields are generally not required. Rather, those lines tell you what the field means, if it happens to be present.

"Number=1,Type=Integer" indicates that if that tag is present it will be followed by a single integer value (e.g. "DP=175"). "Number=0,Type=Flag" means it won't be followed by anything (e.g. "INDEL") because the presence of the tag itself indicates some kind of information (like in this case that the variant call is an indel, in case you are unable to determine that yourself by noticing that the length of the ref and alt are different).

Edit: I would be remiss to not mention the official VCF spec in this post.

Log in to answer this question.