Skip to main content

A package to count k-mers and calculate/plot De Bruijn graphs, occurence bar graphs, venn diagrams, and dendrograms.

Project description

KREPE

ABOUT:

Co-Authors Erika Pedersen and Aengus McGuinness created KREPE at a fellowship with the Institute for Computing in Research.

BACKGROUND INFORMATION:

In bioinformatics, it's important to be able to use strands of DNA to compare organisms, understand and assemble genomes, and get a better picture of how everything works together in an organism. A common tool is the k-mer(nucleotide sequences of length k). When a biologist is working on figuring out a genome, or comparing a cat and a dog, they start with the k-mers. The way they work is similar to a paper shredder; you put in a paper (or multiple reads of the same sequence), and shred it into bits. Then, you take all the paper bits and piece them back together in the same way as before, by finding similarities in each of the pieces. This is useful to biologists because sometimes there are errors when the machine reads a sequence, so with multiple copies it's simple to find errors and toss them out early so they don't affect the overall 'picture'.

These k-mers are sometimes strung together to make stringy looking graphs called 'De Bruijn Graphs', that are used to find a pathway through a genome- this process of finding a pathway is called collapsing. 'Collapsing' a De Bruijn graph is comparable to cobbling together different bus or train routes that start at the place where the last one ends, and finding a way to your destination.

Another kind of graph that is useful is a bar graph. Bar graphs show the appearances of k-mers and can be used to determine the quality of reads and determine what type of organism is being seen.

Dendrograms can be used to compare any number of organisms to each other and see how genetically far apart they are. They have a vertical line from the bottom left to the top right that demonstrates samples intersecting with themselves, and the rest of the squares show intersections between different samples. Venn diagrams are another way to demonstrate the overlap of organisms.

Our program calculates Jaccard similarity (which is basically the amount that things have overlapping, 1.00 being completely the same and 0.00 being completely dissimilar) and uses it for the dendrograms and the venn diagrams.

DESCRIPTION:

The goal of the project is to create a streamlined, easy to use package and command line tool that allows users to count k-mers and easily generates the following:

  • A list of the occurring k-mers in the given file that occur more than once
  • A bar graph that shows the frequency of said k-mer occurrence
  • A De Bruijn graph that can then be used for genome assembly
  • A dendrogram that models genetic similarity and metadata
  • A Venn Diagram that models genetic similarity

The package is protected by copyright under the GNU General Public License

INSTALLATION:

Use the package manager [pip] (https://pip.pypa.io/en/stable/) to install krepe

$  pip install krepe

OR you can install without pip by using git:

$ git clone https://github.com/RGBwalnut/Kmer-Counting-Analysis

USAGE:

The inputs that are allowed are .fasta, .fastq, and .fna.

ROADMAP:

This package is completely open-sourced and is being updated by authors Erika Pedersen and Aengus McGuinness as needs arise

CONTRIBUTING:

Contributions will be accepted, in the instance that the contributor is willing to conform with the following:

A. be listed as a minor contributor in the description

B. not be listed under the copyright

C. be willing to hear suggestions on minor changes to the proposed contribution

As well as in the instance the authors deem the contribution useful.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

krepe-0.2.0.tar.gz (6.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

krepe-0.2.0-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

Details for the file krepe-0.2.0.tar.gz.

File metadata

  • Download URL: krepe-0.2.0.tar.gz
  • Upload date:
  • Size: 6.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.8.10

File hashes

Hashes for krepe-0.2.0.tar.gz
Algorithm Hash digest
SHA256 df291d568f76c7b9de64318c87451482b2bfcc730b42c823fef10588d4de66a8
MD5 e01d5bf3d4601440bf46283635e34d27
BLAKE2b-256 b0d1a33e29c3cc53ffdca718e670832a15ea22b6944099c26377ba013b5fac43

See more details on using hashes here.

File details

Details for the file krepe-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: krepe-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 18.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.8.10

File hashes

Hashes for krepe-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 825cf4ef718ddee52e2e259f074f9fe63ab754d01f2243cc452bd9e94e1f34e8
MD5 4ce19135e20e19e1c6e09c5eb049d454
BLAKE2b-256 152129335fbab5218b7ec5a2295d2eabe910dba6356b9b89d7e612d8036a8406

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page