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.0a0.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.0a0-py3-none-any.whl (38.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mbctools-2.0.0a0.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.0a0.tar.gz
Algorithm Hash digest
SHA256 30480fe0d82bfcf41b2a703aae70a313b700a0841e88f1fc13ac6d4a25eb6c80
MD5 4a8d55f4d594121070f9267a430ef67e
BLAKE2b-256 f4b95a947612b190159bf968c6b6231d433fa1a7faf1db38042fc7c5adb45830

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mbctools-2.0.0a0-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.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 f249e874cf3ec7ce9f14aeb0e9637f19cd56c3dad420bb9b53b09bbe7c335727
MD5 37bae2d71e060acfecf47e8b70d6a271
BLAKE2b-256 b43193fd65a78eb0eccced1d417e8027e255eef208f7975769e3e639fc240fc7

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