# Remove variants that do not map to human genome

I received an hg38 VCF file that's had variants imputed with 1000 genomes. I've encountered some issues with the VCF; REF alleles that do not align to a reference genome, ALT alleles that do not appear to be reported anywhere in the literature, and, most recently, variants that flat-out do not align to the human genome (variants on chr19 with bp-pos 100 million+ when the whole chromosome is in the 50 million bp range).

I've worked out hack-y solutions to most of the issues that I've encountered, but this latest one has been an issue for me. I only detected these variants when I ran VEP and it flagged them as not mapping to the genome. As such, I'm more or less removing these variants one at a time using grep -v. I'd like a solution where I can just remove any variants from the vcf that appear to map to regions that do not exist in the human genome. Bonus points if the solution also encompasses some of the other issues I mentioned, although I think I've already found solutions to those. Is there anything out there that does this?

• "ALT alleles that do not appear to be reported anywhere in the literature": this isn't necessarily a problem, of course. It's entirely likely that you will find novel variants in any real life sample. – terdon May 14 at 13:29
• While I do agree with you, I've seen enough issues with the VCF that I'm skeptical of anything 'novel' reported in there. I've taken the conservative route and removed these variants, at least until I can get the original genotyped calls from our collaborator and verify that these calls were truly there. – John Rouhana May 14 at 13:34
• Oh sure, depending on what data you expect it might be an issue. I only pointed out it doesn't have to be one. For example, I work with clinical "real world" samples and I expect several hundred, or thousand novel variants with no frequency data, let alone any mention in the literature. – terdon May 14 at 13:38

bcftools norm -Ob --check-ref wx -f <reference_fasta> <vcf.gz> -o <output_name>