We discovered today that we made an error in the documentation article that describes the RNAseq Best Practices workflow. The error is not critical but is likely to cause an increased rate of False Positive calls in your dataset.

The error was made in the description of the "Split & Trim" pre-processing step. We originally wrote that you need to reassign mapping qualities to 60 using the ReassignMappingQuality read filter. However, this causes all MAPQs in the file to be reassigned to 60, whereas what you want to do is reassign MAPQs only for good alignments which STAR identifies with MAPQ 255. This is done with a different read filter, called ReassignOneMappingQuality. The correct command is therefore:

java -jar GenomeAnalysisTK.jar -T SplitNCigarReads -R ref.fasta -I dedupped.bam -o split.bam -rf ReassignOneMappingQuality -RMQF 255 -RMQT 60 -U ALLOW_N_CIGAR_READS

In our hands we see a bump in the rate of FP calls from 4% to 8% when the wrong filter is used. We don't see any significant amount of false negatives (lost true positives) with the bad command, although we do see a few more true positives show up in the results of the bad command. So basically the effect is to excessively increase sensitivity, at the expense of specificity, because poorly mapped reads are taken into account with a "good" mapping quality, where they would normally be discarded.

This effect will be stronger in datasets with lower overall quality, so your results may vary. Let us know if you observe any really dramatic effects, but we don't expect that to happen.

To be clear, we do recommend re-processing your data if you can, but if that is not an option, keep in mind how this affects the rate of false positive discovery in your data.

We apologize for this error (which has now been corrected in the documentation) and for the inconvenience it may cause you.

sirian on 11 Jun 2014

Thanks for the correction! I was actually wondering a little bit why you changed every score.

sboyle on 11 Jun 2014

Thanks for the correction Geraldine!

kam on 11 Jun 2014

Here's a working link for [ReassignOneMappingQuality](https://www.broadinstitute.org/gatk/gatkdocs/org_broadinstitute_gatk_engine_filters_ReassignOneMappingQualityFilter.php). Have you considered using the mapping quality formula proposed by the authors of subread? This mapping quality score works for any read mapper. See page 20 in the [Subread User's Guide](http://bioinf.wehi.edu.au/subread-package/SubreadUsersGuide.pdf).

Geraldine_VdAuwera on 11 Jun 2014

@kam This may be a good recommendation to make to the authors of the mappers.

justinjj on 11 Jun 2014

Dear Geraldine, Could you please clarify me is there any difference or issue if I use the mapq as 50 instead of 60 as suggested to run GATK? The bwa aligner higher quality is 60 but the tophat2 (uses bowtie2) provide higher quality/unique mapq as 50 and GATK runs without any error in both cases also by star aligner "--outSAMmapqUnique 50" The RNAseq mappers is already giving meaningful quality score? https://software.broadinstitute.org/gatk/guide/article?id=3891 (So we use the GATK’s ReassignOneMappingQuality read filter to reassign all good alignments to the default value of 60. This is not ideal, and we hope that in the future RNAseq mappers will emit meaningful quality scores, but in the meantime this is the best we can do.) Thanks.

Geraldine_VdAuwera on 11 Jun 2014

Yes, that's fine. If newer versions of the mappers produce MAPQ scores in that range, there is no need to reassign a different value.

justinjj on 11 Jun 2014

Thanks Geraldine.

NeillGibson on 11 Jun 2014

Hi, How can I do the re assignment of the STAR mapping quality in GATK4? I have some trouble finding the correct documentation / an GATK4 SplitNCigarReads CLI example. See also https://gatkforums.broadinstitute.org/gatk/discussion/10800/gatk4-how-to-reassign-star-mapping-quality-from-255-to-60-with-splitncigarreads/ Thank you.

Geraldine_VdAuwera on 11 Jun 2014

@NeillGibson Since this was published many moons ago, the STAR aligner gained the ability to assign meaningful mapping quality scores on request. So we did not implement the ability to reassign MAPQs into GATK4.

NeillGibson on 11 Jun 2014

@Geraldine_VdAuwera Thank you for this information. I passed this information on to the issue that I started at bcbio, where I found out first about this issue. https://github.com/chapmanb/bcbio-nextgen/issues/2163 One risk that I see is that using the `STAR --outSAMmapqUnique 60` option maybe fixes the issue with GATK, but that other downstream tools maybe still depend on the (still default) STAR mapping quality value of 255 (e.g. cufflinks). > The mapping quality MAPQ (column 5) is 255 for uniquely mapping reads, and int(-10*log10(1- > 1/Nmap)) for multi-mapping reads. This scheme is same as the one used by TopHat and is com- > patible with Cuffinks. The default MAPQ=255 for the unique mappers maybe changed with > --outSAMmapqUnique parameter (integer 0 to 255) to ensure compatibility with downstream tools > such as GATK. > https://github.com/alexdobin/STAR/blob/master/doc/STARmanual.pdf

Geraldine_VdAuwera on 11 Jun 2014

Ah, that’s fair concern. I do think that eventually we will want to port the read transformer that made it possible to change the mapqs, but to be frank it’s not a high priority for us. You can still use the read transformer capability using PrintReads in the old version as a stopgap in the meantime.

aggp11 on 11 Jun 2014

Are there any updated "Best Practices" for RNA-Seq variant calling with GATK 4.0?

Sheila on 11 Jun 2014

@aggp11 Hi, Not yet, but I think they are in progress. -Sheila

Geraldine_VdAuwera on 11 Jun 2014

That's right, there's been some work in that direction; the latest version of that (which is not yet all-GATK4) is at https://github.com/gatk-workflows/gatk3-4-rnaseq-germline-snps-indels

- Recent posts

- Upcoming events

See Events calendar for full list and dates

- Recent events

See Events calendar for full list and dates

- Follow us on Twitter

GATK Dev Team


Thanks to Michael Yourshaw for contributing this package for the GATK community's convenience! https://t.co/98koE0fI0y
21 Mar 18
@irem_sarihan @SeqComplete The GATK4 documentation uses the new syntax. There are admittedly a lot of docs still ar… https://t.co/nUlmPz8tR2
21 Mar 18
RT @dgmacarthur: We’re looking for a talented computational biologist to help drive the development of new methods for the diagnosis of rar…
21 Mar 18
@SeqComplete Please use the gatk wrapper script rather than calling the jars directly. Follow the quick start guide… https://t.co/3yoAqz3wdS
19 Mar 18
Join us on Tuesday March 20, we'll be talking about running #GATK4 pipelines on @BroadFireCloud, and how we optimiz… https://t.co/KJkwLKIVKT
16 Mar 18

- Our favorite tweets from others

@gatk_dev We'll be happy to host a survival boot camp for you guys in Finland! Complementary polar bear provided.
13 Mar 18
@gatk_dev @ericschmidt Standardised, accessible, $5. Wow. https://t.co/1bDWBDuIFL
6 Mar 18
I am very grateful to the software from academia that "just works", like GATK, BWA, Picard, Bedtools, SAMtools, Kal… https://t.co/d7pl7tt8x6
3 Mar 18
@gatk_dev @BroadFireCloud @github We've been hacking GATK for years to play well with fish and butterflies! My enth… https://t.co/dt8hB1F85a
23 Feb 18
@BroadFireCloud also does call caching!!!!!! Perfect for tinkering with multi-step pipelines. https://t.co/w6GpDRiN15
23 Feb 18

See more of our favorite tweets...