<p>If you can, do not discard missing allele information.</p>
<p>Generally you often benefit from being able to distinguish between a position that you interrogated and genotyped as REF (reference) versus one that you interrogated but could not determine the genotype (e.g due to low coverage in the sequencing or probing issues in a microarray setup) and which usually is encoded as a missing (./. if ploidy = 2) genotype. A missing genotype tell us that the genotype at this position could be REF, but could also be some other base, we simply do not know.</p>
<p>Knowing this is critical and/or useful depending the downstream analysis. For example it is quite important and informative when merging datasets. Since formats like VCF or PLINK do not record non-variant positions, if you discarded missing genotypes prior to merging, how can you tell between genotypes that truly were REF in one dataset (fully invariant position) and some recorded missing genotypes at the same position but which you decided to discard? You will end up assuming REF status for everything not recorded and this will inevitably lead to batch effects in your combined dataset. For a better discussion see this <a href="http://massgenomics.org/2014/03/gwas-sequencing-realities.html" rel="nofollow noreferrer">blog post</a></p>
<p>On the other hand, if your relational database (your particular situation) for instance will not incorporate external databases in order to produce joint datasets, perhaps discarding missing genotypes is all fine.</p>

CC BY-SA 4.0
2022-11-06T16:11:42.897Z
2022-11-07T07:29:29.923Z
2022-11-07T07:29:29.923Z
JRodrigoF
<p>I am converting a biallelic VCF into a SQL table and one of my tables will be something like:</p>
<pre class="lang-markdown prettyprint-override"><code>SAMPLE | custom variant identifier | Genotype
-------|---------------------------|---------
0001   | 3456                      | ./.
</code></pre>
<p>My question is that for the diploid <code>./.</code> or haploid <code>.</code> missing alleles, whether I can just drop them to save space. My thinking is that since the dot represents missing data, the <code>./.</code> are just placeholders in the VCF but provide no information at all.</p>
<p>Is this correct? Should I retain the rows with <code>./.</code>?</p>
<p>Showing the end of one line of the VCF (really long lines because of high N):</p>
<pre><code>FORMAT          SampleX             SampleY
GT:AD:DP:GQ:PL  0/0:3,0:3:4:0,4,45  ./.:3,0:3:.:0,0,0
</code></pre>
<p>I thought to also show the result after <code>bcftools norm -m</code> to split to biallelic and queried per sample.</p>
<pre><code>sample_id   chr@pos@ref@alt genotype    
sample1 chr1@10158@ACCCT@A       0/0
sample2 chr1@10158@ACCCT@A       ./. &lt;- does this provide any info or can I discard?
sample3 chr1@10158@ACCCT@A       0/0
sample4 chr1@10158@ACCCT@A       ./.
sample5 chr1@10158@ACCCT@A       0/0
</code></pre>

CC BY-SA 4.0
2022-11-05T13:38:45.743Z
Can you show us a few lines of the actual VCF file please? `./.` means the site wasn't genotyped. It is common in gvcf files, for example but we'd have to see some data to judge correctly. Where are the "asterisks"? Do you mean `.`? Asterisks are `*`.
terdon
CC BY-SA 4.0
2022-11-05T16:41:04.173Z
Thanks, I've updated the question. I guess what I'm asking is whether there is any information being encoded for the samples that weren't genotyped for that variant i.e. `./.`
glycoaddict
<vcf><genomics><bcftools>
Can I discard missing alleles?
# Can I discard missing alleles?

(Asked by: username_0 on 2022-11-04)

I am converting a biallelic VCF into a SQL table and one of my tables will be something like:
SAMPLE | custom variant identifier | Genotype
-------|---------------------------|---------
0001   | 3456                      | ./.

My question is that for the diploid ./. or haploid . missing alleles, whether I can just drop them to save space. My thinking is that since the dot represents missing data, the ./. are just placeholders in the VCF but provide no information at all.
Is this correct? Should I retain the rows with ./.?
Showing the end of one line of the VCF (really long lines because of high N):
FORMAT          SampleX             SampleY
GT:AD:DP:GQ:PL  0/0:3,0:3:4:0,4,45  ./.:3,0:3:.:0,0,0

I thought to also show the result after bcftools norm -m to split to biallelic and queried per sample.
sample_id   chr@pos@ref@alt genotype    
sample1 chr1@10158@ACCCT@A       0/0
sample2 chr1@10158@ACCCT@A       ./. <- does this provide any info or can I discard?
sample3 chr1@10158@ACCCT@A       0/0
sample4 chr1@10158@ACCCT@A       ./.
sample5 chr1@10158@ACCCT@A       0/0

**Tags:** vcf, genomics, bcftools
> **Comments:**
> **username_1**: Can you show us a few lines of the actual VCF file please? `./.` means the site wasn't genotyped. It is common in gvcf files, for example but we'd have to see some data to judge correctly. Where are the "asterisks"? Do you mean `.`? Asterisks are `*`.  
> **username_0**: Thanks, I've updated the question. I guess what I'm asking is whether there is any information being encoded for the samples that weren't genotyped for that variant i.e. `./.`  

---

## 1 answers

### Answer by username_2 on 2022-11-06. Score: 1 | Accepted answer

If you can, do not discard missing allele information.

Generally you often benefit from being able to distinguish between a position that you interrogated and genotyped as REF (reference) versus one that you interrogated but could not determine the genotype (e.g due to low coverage in the sequencing or probing issues in a microarray setup) and which usually is encoded as a missing (./. if ploidy = 2) genotype. A missing genotype tell us that the genotype at this position could be REF, but could also be some other base, we simply do not know.

Knowing this is critical and/or useful depending the downstream analysis. For example it is quite important and informative when merging datasets. Since formats like VCF or PLINK do not record non-variant positions, if you discarded missing genotypes prior to merging, how can you tell between genotypes that truly were REF in one dataset (fully invariant position) and some recorded missing genotypes at the same position but which you decided to discard? You will end up assuming REF status for everything not recorded and this will inevitably lead to batch effects in your combined dataset. For a better discussion see this [blog post](http://massgenomics.org/2014/03/gwas-sequencing-realities.html)

On the other hand, if your relational database (your particular situation) for instance will not incorporate external databases in order to produce joint datasets, perhaps discarding missing genotypes is all fine.


---

