GotCloud: Alignment Sub-Pipelines

From Genome Analysis Wiki
Revision as of 21:19, 18 March 2015 by Kleckner (talk | contribs) (→‎bamQC)
Jump to navigationJump to search

Back to parent: GotCloud


List of Alignment Sub-Pipelines

recab

This sub-pipeline takes in a list of bam files for each sample, merges the BAMs for samples that have multiple BAMs, dedups and recalibrates, and then indexes the recalibrated BAM.

recabQC

This sub-pipeline does everything that *recab* does (takes in a list of bam files for each sample, merges the BAMs for samples that have multiple BAMs, dedups and recalibrates, and then indexes the recalibrated BAM). It then goes the next step to perform quality control (running qplot and verifyBamID).

bamQC

This sub-pipeline takes in a single, recalibrated BAM file and its index file (.bai) and performs quality control (running qplot and verifyBamID). It differs from *bamQC_createIndex* in that it requires that the user already have .bai files for the recalibrated BAM files.

bamQC_createIndex

This sub-pipeline takes in a single, recalibrated BAM file, creates an index file for it, and performs quality control (running qplot and verifyBamID). It differs from *bamQC* in that it does not require that the user already have a .bai file for the recalibrated BAM file.

recab

  • What it does:
  1. merge BAMs for samples that have multiple BAMs
  2. dedup and recalibrate
  3. index the recalibrated BAM

Inputs

  • Bam files (stored in a BAM_LIST file)
  • Reference files
  • (Optional) configuration file to override default options
BAM_LIST File
  • Each line of the BAM list file represents a single individual

Columns:

  1. sample id
  2. comma separated population labels (optional column)
  3. BAM File 1 (preferable to have full paths to BAM files)
  4. BAM File 2 (if more than 1 BAM per sample)
...
# BAM File N (if more than 1 BAM per sample)
[SAMPLE_ID]    [COMMA SEPARATED POPULATION LABELS] [BAM_FILE1] [BAM_FILE2] ...

or

[SAMPLE_ID] [BAM_FILE1] [BAM_FILE2] ...
  • Notes:
    • tab delimited
    • multiple BAMs per individual may be provided, but should all be on the same line of the list file
    • population label is optional - it will default to ALL
      • only used by Thunder (part of ldrefine pipeline)
      • if all samples are from the same population, population label can be skipped or you can just specify ALL for the population label for each sample.

Outputs

Upon successful completion of the *recab* sub-pipeline, you should see the following files/subdirectories under the user specified output directory:

  • recab/mergedBams/
    • */SAMPLE.merged.bam - a merged BAM file
    • */SAMPLE.merged.bam.log - merge log
    • */SAMPLE.merged.bam.OK - temp file indicating the merge step completed successfully
  • recab/
    • */SAMPLE.recal.bam - a merged, recalibrated, and deduped BAM file
    • */SAMPLE.recal.bam.bai - an indexed version of the merged, recalibrated, and deduped BAM file
    • */SAMPLE.recal.bam.metrics - dedup & recalibration log
    • */SAMPLE.recal.bam.qemp - recalibration tables
    • */SAMPLE.recal.bam.done - temp file indicating the recalibration step completed successfully
    • */SAMPLE.recal.bam.bai.done - temp file indicating the indexing step completed successfully

You should see .done and .OK files for each SAMPLE in the index file. If you do not see the .done and .OK files, then your *recab* sub-pipeline failed.

On success, the recab/ folder contains the final BAMs and bais.

Command-Line and Configuration Options

  • Required Options
Command-line Flag Configuration Key Value Description Default Value
--list/--bam_list/--bamlist file BAM_LIST path to the BAM_LIST File $(OUT_DIR)/bam.list
--numjobs # number of jobs to run in parallel 0 (generate Makefile of steps, but do not run)
  • Common Options
Command-line Flag Configuration Key Value Description Default Value
--outdir path OUT_DIR output directory
--conf file configuration file to use
REF_DIR where the reference/resource files are stored gotcloud.ref subdirectory within the base GotCloud directory
REF Reference fasta Files $(REF_DIR)/human.g1k.v37.fa
DBSNP_VCF DBSNP VCF Files $(REF_DIR)/dbsnp_135.b37.vcf.gz

Example Configuration File

Example configuration file where reference files happen to be stored in /path/reference, and bam list file is stored in in path/freeze5

BAM_LIST = /path/freeze5.bam.list
OUT_DIR = /path/freeze5/output
REF_DIR = /path/reference/
REF = $(REF_DIR)/hs37d5.fa
DBSNP_VCF = $(REF_DIR)/dbsnp_135.b37.sites.vcf.gz

Example Command Line

gotcloud pipe –-name recab --numjobs <N>

recabQC

  • What it does:
  1. merge BAMs for samples that have multiple BAMs
  2. dedup and recalibrate
  3. index the recalibrated BAM
  4. qplot
  5. verifyBamID

Inputs

  • Bam files (stored in a BAM_LIST file)
  • Reference files
  • (Optional) configuration file to override default options
BAM_LIST File
  • Each line of the BAM list file represents a single individual

Columns:

  1. sample id
  2. comma separated population labels (optional column)
  3. BAM File 1 (preferable to have full paths to BAM files)
  4. BAM File 2 (if more than 1 BAM per sample)
...
# BAM File N (if more than 1 BAM per sample)
[SAMPLE_ID]    [COMMA SEPARATED POPULATION LABELS] [BAM_FILE1] [BAM_FILE2] ...

or

[SAMPLE_ID] [BAM_FILE1] [BAM_FILE2] ...
  • Notes:
    • tab delimited
    • multiple BAMs per individual may be provided, but should all be on the same line of the list file
    • population label is optional - it will default to ALL
      • only used by Thunder (part of ldrefine pipeline)
      • if all samples are from the same population, population label can be skipped or you can just specify ALL for the population label for each sample.

Outputs

Upon successful completion of the *recabQC* sub-pipeline, you should see the following files/subdirectories under the user specified output directory:

  • recab/mergedBams/ - contains merge results
    • */SAMPLE.merged.bam - a merged BAM file
    • */SAMPLE.merged.bam.log - merge log
    • */SAMPLE.merged.bam.OK - temp file indicating the merge step completed successfully
  • recab/ - contains recalibration results
    • */SAMPLE.recal.bam - a merged, recalibrated, and deduped BAM file
    • */SAMPLE.recal.bam.bai - an indexed version of the merged, recalibrated, and deduped BAM file
    • */SAMPLE.recal.bam.metrics - dedup & recalibration log
    • */SAMPLE.recal.bam.qemp - recalibration tables
    • */SAMPLE.recal.bam.done - temp file indicating the recalibration step completed successfully
    • */SAMPLE.recal.bam.bai.done - temp file indicating the indexing step completed successfully
  • QCFiles/ - contains quality control results
    • VerifyBamID Output - see VerifyBamID: A guideline to interpret output files for more information
      • */SAMPLE.genoCheck.depthRG - depth distribution of the sequence reads per read group
      • */SAMPLE.genoCheck.depthSM - depth distribution of the sequence reads per sample
      • */SAMPLE.genoCheck.err - log file
      • */SAMPLE.genoCheck.log - log file
      • */SAMPLE.genoCheck.OK - temp file indicating the VerifyBAMID step completed successfully
      • */SAMPLE.genoCheck.selfRG - per-readGroup statistics describing how well each lane matches to the annotated sample
      • */SAMPLE.genoCheck.selfSM - main output file containing the contamination estimate; per-sample statistics describing how well the sample matches to the annotated sample
        • Check the 'FREEMIX' column for genotype-free estimate of contamination 0-1 scale, the lower, the better
        • If [FREEMIX] >= 0.03 and [FREELK1]-[FREELK0] is large, possible contamination
    • Qplot Output - see: QPLOT: Diagnose sequencing quality for more info on how to use QPLOT results
      • */SAMPLE.qplot.OK - temp file indicating the qplot step completed successfully
      • */SAMPLE.qplot.R - Rscript that can be used to generate the pdf graphs
      • */SAMPLE.qplot.stats - sample statistics

You should see .done and .OK files for each SAMPLE in the index file. If you do not see the .done and .OK files, then your *recabQC* sub-pipeline failed.

On success, the recab/ folder contains the final BAMs and bais, while the QCFiles/ folder contains the quality control output

Command-Line and Configuration Options

  • Required Options
Command-line Flag Configuration Key Value Description Default Value
--list/--bam_list/--bamlist file BAM_LIST path to the BAM_LIST File $(OUT_DIR)/bam.list
--numjobs # number of jobs to run in parallel 0 (generate Makefile of steps, but do not run)
  • Common Options
Command-line Flag Configuration Key Value Description Default Value
--outdir path OUT_DIR output directory
--conf file configuration file to use
REF_DIR where the reference/resource files are stored gotcloud.ref subdirectory within the base GotCloud directory
REF Reference fasta Files $(REF_DIR)/human.g1k.v37.fa
DBSNP_VCF DBSNP VCF Files $(REF_DIR)/dbsnp_135.b37.vcf.gz
HM3_VCF HapMap3 VCF Files $(REF_DIR)/hapmap_3.3.b37.sites.vcf.gz

Example Configuration File

Example configuration file where reference files happen to be stored in /path/reference, and bam list file is stored in in path/freeze5

BAM_LIST = /path/freeze5.bam.list
OUT_DIR = /path/freeze5/output
REF_DIR = /path/reference/
REF = $(REF_DIR)/hs37d5.fa
DBSNP_VCF = $(REF_DIR)/dbsnp_135.b37.sites.vcf.gz
HM3_VCF = $(REF_DIR)/hapmap3_r3_b37.sites.vcf.gz

Example Command Line

gotcloud pipe –-name recabQC --numjobs <N>

bamQC

  • What it does:
  1. qplot
  2. verifyBamID

Inputs

  • Single merged, recalibrated, and deduped BAM file
  • Reference files
  • (Optional) configuration file to override default options
BAM_LIST File
  • Each line of the BAM list file represents a single individual

Columns:

  1. sample id
  2. comma separated population labels (optional column)
  3. BAM File 1 (preferable to have full paths to BAM files)
  4. BAM File 2 (if more than 1 BAM per sample)
...
# BAM File N (if more than 1 BAM per sample)
[SAMPLE_ID]    [COMMA SEPARATED POPULATION LABELS] [BAM_FILE1] [BAM_FILE2] ...

or

[SAMPLE_ID] [BAM_FILE1] [BAM_FILE2] ...
  • Notes:
    • tab delimited
    • multiple BAMs per individual may be provided, but should all be on the same line of the list file
    • population label is optional - it will default to ALL
      • only used by Thunder (part of ldrefine pipeline)
      • if all samples are from the same population, population label can be skipped or you can just specify ALL for the population label for each sample.

Outputs

Upon successful completion of the *bamQC* sub-pipeline, you should see the following files/subdirectories under the user specified output directory:

  • QCFiles/ - contains quality control results
    • VerifyBamID Output - see VerifyBamID: A guideline to interpret output files for more information
      • */SAMPLE.genoCheck.depthRG - depth distribution of the sequence reads per read group
      • */SAMPLE.genoCheck.depthSM - depth distribution of the sequence reads per sample
      • */SAMPLE.genoCheck.err - log file
      • */SAMPLE.genoCheck.log - log file
      • */SAMPLE.genoCheck.OK - temp file indicating the VerifyBAMID step completed successfully
      • */SAMPLE.genoCheck.selfRG - per-readGroup statistics describing how well each lane matches to the annotated sample
      • */SAMPLE.genoCheck.selfSM - main output file containing the contamination estimate; per-sample statistics describing how well the sample matches to the annotated sample
        • Check the 'FREEMIX' column for genotype-free estimate of contamination 0-1 scale, the lower, the better
        • If [FREEMIX] >= 0.03 and [FREELK1]-[FREELK0] is large, possible contamination
    • Qplot Output - see: QPLOT: Diagnose sequencing quality for more info on how to use QPLOT results
      • */SAMPLE.qplot.OK - temp file indicating the qplot step completed successfully
      • */SAMPLE.qplot.R - Rscript that can be used to generate the pdf graphs
      • */SAMPLE.qplot.stats - sample statistics

You should see .done and .OK files for each SAMPLE in the index file. If you do not see the .done and .OK files, then your *bamQC* sub-pipeline failed.

On success, the QCFiles/ folder contains the quality control output

Command-Line and Configuration Options

  • Required Options
Command-line Flag Configuration Key Value Description Default Value
--list/--bam_list/--bamlist file BAM_LIST path to the BAM_LIST File $(OUT_DIR)/bam.list
--numjobs # number of jobs to run in parallel 0 (generate Makefile of steps, but do not run)
  • Common Options
Command-line Flag Configuration Key Value Description Default Value
--outdir path OUT_DIR output directory
--conf file configuration file to use
REF_DIR where the reference/resource files are stored gotcloud.ref subdirectory within the base GotCloud directory
REF Reference fasta Files $(REF_DIR)/human.g1k.v37.fa
DBSNP_VCF DBSNP VCF Files $(REF_DIR)/dbsnp_135.b37.vcf.gz
HM3_VCF HapMap3 VCF Files $(REF_DIR)/hapmap_3.3.b37.sites.vcf.gz

Example Configuration File

Example configuration file where reference files happen to be stored in /path/reference, and bam list file is stored in in path/freeze5

BAM_LIST = /path/freeze5.bam.list
OUT_DIR = /path/freeze5/output
REF_DIR = /path/reference/
REF = $(REF_DIR)/hs37d5.fa
DBSNP_VCF = $(REF_DIR)/dbsnp_135.b37.sites.vcf.gz
HM3_VCF = $(REF_DIR)/hapmap3_r3_b37.sites.vcf.gz

Example Command Line

gotcloud pipe –-name bamQC --numjobs <N>

bamQC_createIndex