I am working on some human WGS tumor samples and I want to call somatic variants against the normal tissue sample. I see that Mutect2 had a tumor-mode in previous Mutect2 (now deprecated) guidelines but I can not find it anymore in current GATK Mutect2 guidelines where only PoN are used.
Does it mean that I cannot compare 2 samples directly anymore? Shall I just put the normal tissue in the PoN with other samples? What would be a good way to have a direct comparison between normal and tumor samples (maybe after applying a Panel-of-Normals filter too).
Thank you in advance for any help!
HI Cocchi,
Although I haven't gone through deeply, I believe you should check out this link where the GATK group described the usage of Mutect2 for a paired t-n tissues. It's updated 14 days ago. Not sure if it serves your WGS data though. https://gatk.broadinstitute.org/hc/en-us/articles/360035894731-Somatic-short-variant-discovery-SNVs-Indels-
Field
Hi , I have used Mutect2 with tumor normal, but Why my Mutect2 output VCF shows variants found in both (Normal and Tumor) samples ?
It should only contains/show variants in Tumor sample and Normal variants should be filtered out, I am interested in variants found in Tumor (not in matched normal).
TIA
Your VCF file contains the genotype of both samples, it's your choice why,how and when to filter variants.
Thanks ! If I understand correctly, I have to filter out variants found in Normal. Would GATK FilterMutectCalls or SelectVariants be a choice ?
I read the cmd arguments but there is nothing like to filter out variants found in normal. These two can add PASS filter and keep PASS only. Any point of direction would be appreciated.
If you give both Normal-Tumor BAM file, your VCF will contain two ending columns, one for each sample. With
FilterMutectCalls
you'll apply a filtering over the previous called variants using a mixture Bayesian model, with several tunable parameters. Apply a filter means that yourFILTER
field in the VCF file will be filled with a reason (if any). With SelectVariants you could product a VCF excluding variants with specific/any reason in theFILTER
field. So typically you'd use both in the explained order. Variants found in normal file will be flagged with theGERMLINE
tag, and excluded by SelectVariants.Thank you ! I tried with FilterMutectCalls but there is no Filter flag worked to remove normal sample name from VCF. In fact, no Filter flag is available for the same.
However, SelectVariant has worked for me to exclude normal_sample_name column as well as normal variants from VCF file. It resulted tumor only column showing tumor variants.
The commands worked for me is :
gatk SelectVariant -V Mutect2_Filtered.vcf.gz -R ref.fa --exclude-filtered true --exclude-sample-name normal_sample_name -O Mutect2_Filtered_PASS.vcf.gz
What I have learned that :
--exclude-filtered true # keeps PASS variants only
--exclude-sample-name normal_sample_name # Removes normal sample column and variants found in normal sample.
Do I need any corrections here ?
I still think you're misunderstanding how a VCF file is designed. As I've stated before,
FilterMutectCalls
has the role of flagging variants, trying to identify sources of contamination, strand/orientation bias, Germline variants, and others. When you're calling variants in tumor sample using a matched normal sample,Mutect2
will use the tumor sample as a source of variants lookup. In the same locus the search would be conducted also on normal sample, and the identified genotype will be reported in the VCF. So I'm not sure what you are referring viavariants found in normal sample
. Germlines? Contamination?The flag you're using are just exclusions based on the VCF file itself, nothing that couldn't be done also via an awk command in Bash. The
--exclude-sample-name
removes just the column containing the genotype of the passed sample name.Yes, You are right, I had typos above which I corrected. and yes, my confusion as well as you pointed out.
Actually, after running Mutect2 with Tumor and Normal, I want to keep variants found only in Tumor . For this reason, I have run:
FilterMutectCalls
SelectVariant : --exclude-filtered true (keep PASS only) and --exclude-sample-name normal_sample_name (to exclude normal variants).
Do you think, I would require to do some additional filtering ? or any corrections here please ?
Variants with no flags (PASS only) are considered somatic for the tumor sample in your setup. As it is, it's enough.
Thanks, PASS only variants are actually shown in both tumor and normal within single VCF from Mutect2 run . I want tumor somatic mutations filtering out normal PASS variants.
In other words, I get somatic PASS variants in tumor and normal from Mutec2 output. :(