Resources chevron_right Protocols chevron_right CheckM
Protocol // Genomes

CheckM

Check genome completeness and contamination using lineage-specific marker gene sets.

Install CheckM

Create a conda environment:

conda create -n CheckM_env

Activate the conda environment:

conda activate CheckM_env

Installing CheckM:

conda install -c bioconda checkm-genome

Options for Running CheckM

usage: checkm lineage_wf [-h] [-r] [--ali] [--nt] [-g] [-u UNIQUE] [-m MULTI]
                         [--force_domain] [--no_refinement]
                         [--individual_markers] [--skip_adj_correction]
                         [--skip_pseudogene_correction]
                         [--aai_strain AAI_STRAIN] [-a ALIGNMENT_FILE]
                         [--ignore_thresholds] [-e E_VALUE] [-l LENGTH]
                         [-f FILE] [--tab_table] [-x EXTENSION] [-t THREADS]
                         [--pplacer_threads PPLACER_THREADS] [-q]
                         [--tmpdir TMPDIR]
                         bin_dir output_dir

Run CheckM

checkm lineage_wf directory with your fna files checkm/ -f your output file -t 20 --tab_table

Example:

checkm lineage_wf fna CheckM_Out -f CheckM_Out.tab -t 20 --tab_table

tree — Place bins in the reference genome tree:

checkm tree -x fasta <bin folder> <output folder>

Required parameters:

  • • bin_folder — folder containing bins (FASTA format)
  • • out_folder — folder to write output files

Optional parameters:

  • • -r, --reduced_tree — use reduced tree for determining lineage of each bin (suitable for 16 GB machines)
  • • --ali — generate HMMER alignment file for each bin in ./<output folder>/bins/<bin id>/hmmer.tree.ali.txt
  • • --nt — generate nucleotide gene sequences for each bin in ./<output folder>/bins/<bin id>/genes.fna
  • • -g, --genes — bins contain genes as amino acids instead of nucleotide contigs
  • • -x, --extension — extension of bins (other files in folder are ignored)
  • • -t, --threads — number of threads
  • • --pplacer_threads — number of threads used by pplacer (memory usage increases linearly with additional threads)
  • • -q, --quiet — suppress console output
info

The following heuristic is used to establish the translation table used by Prodigal: use table 11 unless the coding density using table 4 is 5% higher than when using table 11 and the coding density under table 4 is >70%. Distinguishing between tables 4 and 25 is challenging so CheckM does not attempt to distinguish between these two tables. If you know the correct translation table for your genomes, it is recommended that you call genes outside of CheckM and provide CheckM with the protein sequences (see --genes).