This is a test version of Biostars. For the public version, visit https://www.biostars.org.
GATK Mutect2 tumor mode

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!

gatk mutect2 tumor human wgs

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 your FILTER 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 the FILTER field. So typically you'd use both in the explained order. Variants found in normal file will be flagged with the GERMLINE 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 :

  1. --exclude-filtered true # keeps PASS variants only

  2. --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 via variants 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:

  1. FilterMutectCalls

  2. 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. :(

1 answer

Hi!

I think Mutect2 can be used to compare simply a normal and tumor sample. Like here described: https://gatk.broadinstitute.org/hc/en-us/articles/360037593851-Mutect2. Just simply use the -I option for the normal and the tumor sample file as well, but the read group name must be changed (set different) in the normal sample file. It is used as an argument with the -normal option.

Thanks, much appreciated!

I tried with . . . -I tumor.bam -I normal.bam -normal normal_sample_name . . .

No luck, I still variants in found in tumor and Normal :(

Any idea how to get VCF outfile showing only tumor variants (filtering out Normal, not showing normal_sample_name in output vcf file)?

Log in to answer this question.