ntCard

ntCard estimates k-mer frequencies and constructs k-mer frequency histograms from sequencing datasets to support genome size estimation, sequencing error assessment, and optimization of downstream k-mer–based analyses.


Key Features:

  • Streaming Algorithm: ntCard uses a streaming algorithm to process large sequencing datasets without loading the entire dataset into memory.
  • Hashing Technique: It uses the ntHash algorithm to compute hash values for k-mers to enable rapid k-mer frequency estimation.
  • Sampling and Statistical Modeling: ntCard samples hash values to build a reduced-representation multiplicity table of sampled k-mers and applies a statistical model to reconstruct the population k-mer frequency distribution.

Scientific Applications:

  • K-mer frequency estimation: ntCard provides rapid estimation of k-mer coverage frequencies for genome size prediction, sequencing error rate assessment, and tuning of parameters for k-mer–based tools.
  • Benchmarking on large datasets: ntCard has been benchmarked on datasets ranging from 480 GB to 2.4 TB, including whole-genome shotgun sequencing of human and white spruce, achieving more than 15× faster k-mer frequency estimates than other algorithms with similar memory usage and higher accuracy.

Methodology:

ntCard computes ntHash hash values for streamed sequences, samples those hash values to construct a multiplicity table representing the sample distribution of k-mers, and applies a statistical model to infer the population k-mer frequency distribution.

Topics

Details

License:
GPL-3.0
Tool Type:
command-line tool
Operating Systems:
Linux, Mac
Programming Languages:
C++
Added:
6/4/2018
Last Updated:
11/25/2024

Operations

Publications

Mohamadi H, Khan H, Birol I. ntCard: a streaming algorithm for cardinality estimation in genomics data. Bioinformatics. 2017;33(9):1324-1330. doi:10.1093/bioinformatics/btw832. PMID:28453674. PMCID:PMC5408799.

PMID: 28453674
PMCID: PMC5408799
Funding: - National Institutes of Health: R01HG007182

Documentation