Our Sponsors



Download BioinformaticsOnline(BOL) Apps in your chrome browser.




  • Bookmarks
  • Jit
  • KAT: a K-mer analysis toolkit to quality control NGS datasets and genome assemblies

KAT: a K-mer analysis toolkit to quality control NGS datasets and genome assemblies

https://github.com/TGAC/KAT

KAT is a suite of tools that analyse jellyfish hashes or sequence files (fasta or fastq) using kmer counts. The following tools are currently available in KAT:

  • hist: Create an histogram of k-mer occurrences from a sequence file. Adds metadata in output for easy plotting.
  • gcp: K-mer GC Processor. Creates a matrix of the number of K-mers found given a GC count and a K-mer count.
  • comp: K-mer comparison tool. Creates a matrix of shared K-mers between two (or three) sequence files or hashes.
  • sect: SEquence Coverage estimator Tool. Estimates the coverage of each sequence in a file using K-mers from another sequence file.
  • blob: Given, reads and an assembly, calculates both the read and assembly K-mer coverage along with GC% for each sequence in the assembly.SEquence Coverage estimator Tool.
  • filter: Filtering tools. Contains tools for filtering k-mer hashes and FastQ/A files:
    • kmer: Produces a k-mer hash containing only k-mers within specified coverage and GC tolerances.
    • seq: Filters a sequence file based on whether or not the sequences contain k-mers within a provided hash.
  • plot: Plotting tools. Contains several plotting tools to visualise K-mer and compare distributions. The following plot tools are available:
    • density: Creates a density plot from a matrix created with the "comp" tool. Typically this is used to compare two K-mer hashes produced by different NGS reads.
    • profile: Creates a K-mer coverage plot for a single sequence. Takes in fasta coverage output coverage from the "sect" tool
    • spectra-cn: Creates a stacked histogram using a matrix created with the "comp" tool. Typically this is used to compare a jellyfish hash produced from a read set to a jellyfish hash produced from an assembly. The plot shows the amount of distinct K-mers absent, as well as the copy number variation present within the assembly.
    • spectra-hist: Creates a K-mer spectra plot for a set of K-mer histograms produced either by jellyfish-histo or kat-histo.
    • spectra-mx: Creates a K-mer spectra plot for a set of K-mer histograms that are derived from selected rows or columns in a matrix produced by the "comp".

In addition, KAT contains a python script for analysing the mathematical distributions present in the K-mer spectra in order to determine how much content is present in each peak.

This README only contains some brief details of how to install and use KAT. For more extensive documentation please visit: https://kat.readthedocs.org/en/latest/

https://academic.oup.com/bioinformatics/article/33/4/574/2664339 

Comments

  • Neel 1568 days ago

    Using KAT again (You will need the modules: KAT/2.1.1 and gnuplot/4.6.5) – we can plot the kmer content of the assembly compared to the kmer content of the read set. The first thing we need to do is to combine the reads into a single file, for gzipped files, this can be done with zcat, or for unzipped files cat.

    Ex.

    $ cat reads_R1.fastq >> combined.fastq
    $ zcat reads_R2.fastq.gz >> combined.fastq
    

    We will now use kat comp to create a kmer content comparison. Use kat comp --help to get help for the program, then create a comparison between the combined reads and the assembly. Make sure that you use the flags for canonical hashes for both sequence 1 and 2, as well as 8 threads. Finally, clean up you working directory by removing the combined fasta file, and re-zipping any unzipped files. Then download the output files to you computer using scp and look at the png file that was produced.

    • Does the kmer content look good to you?
    • How much of the kmer “noise” is part of the final assembly?
    • What do you think contamination would look like in the kmer plot?
    • What can the kmer graph tell you about the ploidy of the organism?