Skip to content
 
 

Repository files navigation

CAPYBARA

Capybara is a Core-snp Assignment PYthon tool for Acinetobacter baumannii. It screens either raw reads or assemblies for :

  • Identifying whether a query belongs to the epidemic super-lineage (ESL), a super-set of two predominant international clones: IC1 and IC2.
  • Assignment of query strain into one of the lineages, clusters, and clades in the ESL based on a pre-curated set of SNPs.

Citation

Shengkai Li, Heng Li, Guilai Jiang, Shengke Wang, Min Wang, Yilei Wu, Xiao Liu, Ling Zhong, Shichang Xie, Yi Ren, Yongliang Lou, Jimei Du, Zhemin Zhou, 2024, Emergence and Global Spread of a Dominant Multidrug-Resistant Variant in Acinetobacter baumannii, https://www.nature.com/articles/s41467-025-58106-9


Installation:

Capybara was devoloped and tested in Python 3.9.0, and requires several modules:

minimap2
mash
samtools
bcftools

You can easily install these packages using command below:

conda install -c bioconda samtools bcftools minimap2 mash

Then you can use git to clone Capybara into your PC.

git clone git@github.com:Zhou-lab-SUDA/CAPYBARA.git

Quick Start (with examples)

$ cd /path/to/Capybara/

$ python capy.py -i examples/2.5.6.fa

It will generate a report file for Examples/2.5.6.fa about its population.

A single run for an assembled genome will finish <3 minutes for a 4 CPUs laptop (>10 minutes for short reads).

Usage

$ Usage: capy.py [OPTIONS]

Options:

  -i, --input TEXT  [Required] Input data, both assembled genome or short reads are acceptable.

  -o, --output TEXT [Optional] Prefix for output file. Default as Capy.

  -t, --threads INTEGER [Optional] Number of process to use. default: 4.

  -m, --metagenomic Metagenomic mode, skip CC assignment.

  --subsample SUBSAMPLE [0-1] Subsample proportion when handling short reads.

  --min-snp-depth MIN_SNP_DEPTH

  --min-allele-frac MIN_ALLELE_FRAC

  --help    Show this message and exit.

Capybara generates three report files:

[Output].summary.tsv (Metagenomic version will NOT show the lineage/sublineage assignment):

sample mode lineage sublineage GC1_votes GC2_votes reads_total reads_mapped best_score variant_total
2.5.6.fa metagenomic NA NA NA NA 1472092 12905 0 0

[Output].summary.tsv (Isolate version)

sample mode lineage sublineage GC1_votes GC2_votes reads_total reads_mapped best_score variant_total
2.5.6.fa isolate 2.5 2.5.6 0 7 107 103 1.0 50

[Output].markers.tsv:

Detailed calling description for each SNP barcode. Lineage/sublineage assignment for metagenomic samples can be found here.

[Output].summary.tsv:

Json format SNP coverage summary.

Work flow and Reproduction Instructions

Work flow

A basic run for Capybara is as follows:

  • ESL identification:
    • We pre-sketched all 5,824 representative genomes. Genetic distance between query data and pre-sketched data will be evaluated to find the most closed genomes.
    • If query data does not contains any sequential information related to ESL genomes, it will be classified as non-ESL. Otherwise, it will be analyzed as follows.
  • Sequential alignment:
    • Query data will be aligned onto ESL's reference genome (MDR-TJ:GCF_000187205.2) to generate a BAM file.
  • SNP calling:
    • A series SNPs will be called from BAM and then generate an VCF file.
  • Population assignment:
    • Using a pre-built SNP scheme to assign hierarchical population of query data.

Workflow chart:

Reproduction Instructions

All data required for reproduction of the analysis were distributed in this repository under CAPYBARA/capydb/

which included:

  • esl/esl.fna
Reference genome for ESL.
  • msh/*.msh
5,824 pre-sketched files by Mash sketch.

Our pulished release

You may also be interested KleTy, a pipeline for analysis of Klebsiella and can also genotype plasmids from short-reads file.

DOI

About

A genotyping pipeline for Acinetobacter baumannii, presented proudly by a capybara

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages