Evaluate and compare base quality score recalibration (BQSR) tables
Category Diagnostics and Quality Control
OverviewEvaluate and compare base quality score recalibration tables
This tool generates plots to assess the quality of a recalibration run as part of the Base Quality Score Recalibration (BQSR) procedure.
Summary of the BQSR procedure
The goal of this procedure is to correct for systematic bias that affects the assignment of base quality scores by the sequencer. The first pass consists of calculating error empirically and finding patterns in how error varies with basecall features over all bases. The relevant observations are written to a recalibration table. The second pass consists of applying numerical corrections to each individual basecall based on the patterns identified in the first step (recorded in the recalibration table) and writing out the recalibrated data to a new BAM or CRAM file.
The tool can take up to three different sets of recalibration tables. The resulting plots will be overlaid on top of each other to make comparisons easy.
|Original||-before||BEFORE||Maroon1||First pass recalibration tables obtained from applying org.broadinstitute.hellbender.transformers.BQSRReadTransformer on the original alignment.|
|Recalibrated||-after||AFTER||Blue||Second pass recalibration tables results from the application of org.broadinstitute.hellbender.transformers.BQSRReadTransformer on the alignment recalibrated using the first pass tables|
|Input||-bqsr||BQSR||Black||Any recalibration table without a specific role|
You need to specify at least one set. Multiple sets need to have the same values for the following parameters:
covariate (order is not important), no_standard_covs, run_without_dbsnp, solid_recal_mode, solid_nocall_strategy, mismatches_context_size, mismatches_default_quality, deletions_default_quality, insertions_default_quality, maximum_cycle_value, low_quality_tail, default_platform, force_platform, quantizing_levels and binary_tag_name
Currently this tool generates two outputs:
- -plots my-report.pdf
- A pdf document that encloses plots to assess the quality of the recalibration
- -csv my-report.csv
- A csv file that contains a table with all the data required to generate those plots
You need to specify at least one of them.
Plot a single recalibration table
gatk AnalyzeCovariates \ -bqsr recal1.table \ -plots AnalyzeCovariates.pdf
Plot "before" (first pass) and "after" (second pass) recalibration tables to compare them
gatk AnalyzeCovariates \ -before recal1.table \ -after recal2.table \ -plots AnalyzeCovariates.pdf
Plot up to three recalibration tables for comparison
gatk AnalyzeCovariates \ -bqsr recal1.table \ -before recal2.table \ -after recal3.table \ -plots AnalyzeCovariates.pdf
- Sometimes you may want to compare recalibration tables where the "after" table was actually generated first. To suppress warnings about the dates of creation of the files, use the `--ignore-last-modification-times` argument.
- You can ignore the before/after semantics completely if you like, but all tables must have been generated using the same parameters.
AnalyzeCovariates specific arguments
This table summarizes the command-line arguments that are specific to this tool. For more details on each argument, see the list further down below the table or click on an argument name to jump directly to that entry in the list.
|Argument name(s)||Default value||Summary|
|Optional Tool Arguments|
|file containing the BQSR second-pass report file|
||read one or more arguments files and add them to the command line|
|file containing the BQSR first-pass report file|
|Input covariates table file for on-the-fly base quality score recalibration|
|20||If the GCS bucket channel errors out, how many times it will attempt to re-initiate the connection|
||Project to bill when accessing "requester pays" buckets. If unset, these buckets cannot be accessed. User must have storage.buckets.get permission on the bucket being accessed.|
|false||display the help message|
||false||do not emit warning messages related to suspicious last modification time order of inputs|
|location of the csv intermediate file|
|location of the output report|
||false||display the version number for this tool|
|Optional Common Arguments|
||A configuration file to use with the GATK.|
||false||Whether to suppress job-summary info on System.err.|
||Temp directory to use.|
|false||Whether to use the JdkDeflater (as opposed to IntelDeflater)|
|false||Whether to use the JdkInflater (as opposed to IntelInflater)|
||INFO||Control verbosity of logging.|
||false||display hidden arguments|
Arguments in this list are specific to this tool. Keep in mind that other arguments are available that are shared with other tools (e.g. command-line GATK arguments); see Inherited arguments above.
--after-report-file / -after
file containing the BQSR second-pass report file
File containing the recalibration tables from the second pass.
read one or more arguments files and add them to the command line
--before-report-file / -before
file containing the BQSR first-pass report file
File containing the recalibration tables from the first pass.
--bqsr-recal-file / -bqsr
Input covariates table file for on-the-fly base quality score recalibration
Enables recalibration of base qualities, intended primarily for use with BaseRecalibrator and ApplyBQSR (see Best Practices workflow documentation). The covariates tables are produced by the BaseRecalibrator tool. Please be aware that you should only run recalibration with the covariates file created on the same input bam(s).
A configuration file to use with the GATK.
--gcs-max-retries / -gcs-retries
If the GCS bucket channel errors out, how many times it will attempt to re-initiate the connection
int 20 [ [ -∞ ∞ ] ]
Project to bill when accessing "requester pays" buckets. If unset, these buckets cannot be accessed. User must have storage.buckets.get permission on the bucket being accessed.
--help / -h
display the help message
do not emit warning messages related to suspicious last modification time order of inputs
If true, it won't show a warning if the last-modification time of the before and after input files suggest that they have been reversed.
--intermediate-csv-file / -csv
location of the csv intermediate file
Output csv file name.
--plots-report-file / -plots
location of the output report
Output report file name.
Whether to suppress job-summary info on System.err.
--showHidden / -showHidden
display hidden arguments
Temp directory to use.
--use-jdk-deflater / -jdk-deflater
Whether to use the JdkDeflater (as opposed to IntelDeflater)
--use-jdk-inflater / -jdk-inflater
Whether to use the JdkInflater (as opposed to IntelInflater)
--verbosity / -verbosity
Control verbosity of logging.
The --verbosity argument is an enumerated type (LogLevel), which can have one of the following values:
display the version number for this tool
GATK version 18.104.22.168-SNAPSHOT built at Tue, 4 Jan 2022 16:50:23 -0800.