Skip to main content

mbctools: A User-Friendly Metabarcoding and Cross-Platform Pipeline for Analyzing Multiple Amplicon Sequencing Data across a Large Diversity of Organisms

Project description

mbctools

This crossplatform (Linux, OSX, Windows) Python program is a toolkit to make the use of VSEARCH easier and interactive, helping to analyze your Metabarcoding NGS data in best conditions. It features the following MAIN MENU:

1 -> INITIAL ANALYSIS (mandatory): read merging, sample-level dereplication, sequence clustering,
	chimera detection, affiliation of sequences to loci, and sequence re-orientation

2 -> PRIMER REMOVAL AND SELECTION OF MINIMUM SEQUENCE ABUNDANCE LEVELS ACCORDING TO USER-DEFINED THRESHOLDS

3 -> GENERATION OF A UNIQUE SEQUENCE FILE FOR EACH LOCUS (comprising all samples' data)

4 -> EXPORTING ANALYSIS RESULTS INTO metaXplor FORMAT

mbctools reference:

Christian Barnabé†, Guilhem Sempéré†, Vincent Manzanilla, Joel Moo Millan, Antoine Amblard-Rambert and Etienne Waleckx (†Co–first authors). mbctools: A User-Friendly Metabarcoding and Cross-Platform Pipeline for Analyzing Multiple Amplicon Sequencing Data across a Large Diversity of Organisms. bioRxiv doi: https://doi.org/10.1101/2024.02.08.579441

VSEARCH reference:

Rognes T, Flouri T, Nichols B, Quince C, Mahe F (2016). VSEARCH: a versatile open source tool for metagenomics. PeerJ 4:e2584 doi: 10.7717/peerj.2584 https://doi.org/10.7717/peerj.2584

metaXplor reference:

Guilhem Sempéré, Adrien Pétel, Magsen Abbé, Pierre Lefeuvre, Philippe Roumagnac, Frédéric Mahé, Gaël Baurens, Denis Filloux. metaXplor: an interactive viral and microbial metagenomic data manager. GigaScience, Volume 10, Issue 2, February 2021, giab001, https://doi.org/10.1093/gigascience/giab001


Requirements

  • Python v3.7 or higher
  • VSEARCH v2.19.0 or higher must be installed and accessible in the PATH (binaries for all platforms available at https://github.com/torognes/vsearch, along with installation procedure descriptions)
  • Windows users will need to enable Powershell script execution using the Set-ExecutionPolicy command

Procedure for Windows setup

  • Download and install latest Python3 release from https://www.python.org/downloads/ (simplest way is to use the 64-bit installer). Don't forget to tick the "Add python.exe to PATH" checkbox before launching setup

  • Download and unzip latest VSEARCH release from https://github.com/torognes/vsearch/releases

  • Locate the path to the vsearch.exe executable (e.g., C:\Users<UserName>\Downloads\vsearch-2.28.1-win-x86_64) and add it to the PATH environment variable as follows:

    • Press Win + R, type sysdm.cpl, and press Enter
    • In the Advanced system settings tab, click Environment Variables
    • Find the Path environment variable and select it. Click Edit
    • In the Edit System Variable window, add an entry pointing to the location of vsearch.exe (not including the file name, only its full path). Click OK until all windows disappear
  • Open a command prompt and type "pip install mbctools"

You should then be able to launch mbctools directly from the command prompt or Powershell, by typing "mbctools".


Test data

Test data are available at https://doi.org/10.23708/W3TODJ and may be used as a guidance example


Getting started

Once VSEARCH + mbctools are installed and accessible from the PATH, and .txt files pointing to the data have been edited, entering the "mbctools" command from a console is normally enough to launch the program. If you did not use pip to install mbctools and directly downloaded mbctools.py from the source code repository, may have have to try different commands like "./mbctools.py", "python mbctools.py" or "python3 mbctools.py"


Releasing to PyPI

Maintainers can use an isolated virtual environment for release operations. This does not affect end users.

1. Prepare build tooling

python -m pip install --upgrade pip build twine setuptools wheel

2. Build source and wheel artifacts

rm -rf dist build *.egg-info
python -m build
python -m twine check dist/*

3. Upload package

export TWINE_USERNAME=__token__
export TWINE_PASSWORD='pypi-<YOUR_REAL_PYPI_TOKEN>'
python -m twine upload --repository-url https://upload.pypi.org/legacy/ dist/* --verbose

4. Tag matching release version in git

git tag -a v2.0.0a0 -m "mbctools 2.0.0a0"
git push origin v2.0.0a0

Versioning rules

  • Use PEP 440 versions directly in mbctools.py (for example: 2.0.0a0, 2.0.0b1, 2.0.0rc1, 2.0.0).
  • Keep the same version in git tags and PyPI uploads.

User installation and launch

# install latest stable
python -m pip install mbctools

# install a specific pre-release
python -m pip install mbctools==2.0.0a0

# or install the latest available pre-release
python -m pip install --pre mbctools

# run with either command
mbctools
python -m mbctools

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

mbctools-2.0.0a1.tar.gz (38.3 kB view details)

Uploaded Source

Built Distribution

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

mbctools-2.0.0a1-py3-none-any.whl (38.8 kB view details)

Uploaded Python 3

File details

Details for the file mbctools-2.0.0a1.tar.gz.

File metadata

  • Download URL: mbctools-2.0.0a1.tar.gz
  • Upload date:
  • Size: 38.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for mbctools-2.0.0a1.tar.gz
Algorithm Hash digest
SHA256 b8ddd1005c350d80b0845b0ee8a9c45639d8ad1ae9a98c1dc19e1ca116576548
MD5 c904d12f8ce30764796ba2c04ff39bcf
BLAKE2b-256 5645f4fa14b2fd6ffb169ea75f306f0651c394297779d8016ddf2450cbea8dea

See more details on using hashes here.

File details

Details for the file mbctools-2.0.0a1-py3-none-any.whl.

File metadata

  • Download URL: mbctools-2.0.0a1-py3-none-any.whl
  • Upload date:
  • Size: 38.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for mbctools-2.0.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 ed467677ae35e11793c8ac71b36347a12a09d70fd3fc2e87bb9a11f60536d653
MD5 110747904334389c6d04df04c8a1d35e
BLAKE2b-256 2d1cd8462f08c19d47d73e490b8977579d323dc823a1f0e8ddbaa83cce0d394f

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