graphbin2


Namegraphbin2 JSON
Version 1.3.3 PyPI version JSON
download
home_pageNone
SummaryGraphBin2: Refined and Overlapped Binning of Metagenomic Contigs Using Assembly Graphs
upload_time2024-09-26 04:49:32
maintainerNone
docs_urlNone
authorNone
requires_python<3.13,>=3.9
licenseNone
keywords metagenomics binning contigs bioinformatics
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
  <img src="https://raw.githubusercontent.com/metagentools/GraphBin2/master/docs/images/GraphBin2_Logo_light.png#gh-light-mode-only" width="450" title="GraphBin2 Logo" alt="GraphBin2 Logo">
  <img src="https://raw.githubusercontent.com/metagentools/GraphBin2/master/docs/images/GraphBin2_Logo_dark.png#gh-dark-mode-only" width="450" title="GraphBin2 Logo" alt="GraphBin2 Logo">
</p>

# GraphBin2: Refined and Overlapped Binning of Metagenomic Contigs Using Assembly Graphs

[![DOI](https://img.shields.io/badge/DOI-10.4230/LIPIcs.WABI.2020.8-informational)](https://doi.org/10.4230/LIPIcs.WABI.2020.8)
[![DOI](https://img.shields.io/badge/DOI-10.1186/s13015--021--00185--6-yellow)](https://doi.org/10.1186/s13015-021-00185-6)
[![DOI](https://zenodo.org/badge/262936904.svg)](https://zenodo.org/badge/latestdoi/262936904)
![GitHub](https://img.shields.io/github/license/Vini2/GraphBin2)
[![install with bioconda](https://img.shields.io/badge/install%20with-bioconda-brightgreen.svg?style=flat)](http://bioconda.github.io/recipes/graphbin2/README.html)
[![PyPI version](https://badge.fury.io/py/graphbin2.svg)](https://badge.fury.io/py/graphbin2)
[![Downloads](https://static.pepy.tech/badge/graphbin2)](https://pepy.tech/project/graphbin2)
[![CI](https://github.com/metagentools/GraphBin2/actions/workflows/testing.yml/badge.svg)](https://github.com/metagentools/GraphBin2/actions/workflows/testing.yml)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![CodeQL](https://github.com/metagentools/GraphBin2/actions/workflows/codeql.yml/badge.svg)](https://github.com/metagentools/GraphBin2/actions/workflows/codeql.yml)
[![Documentation Status](https://readthedocs.org/projects/graphbin2/badge/?version=latest)](https://graphbin2.readthedocs.io/en/latest/?badge=latest)


GraphBin2 is an extension of [GraphBin](https://github.com/Vini2/GraphBin) which refines the binning results obtained from existing tools and, more importantly, is able to assign contigs to multiple bins. GraphBin2 uses the connectivity and coverage information from assembly graphs to adjust existing binning results on contigs and to infer contigs shared by multiple species.

**For detailed instructions on installation, usage and visualisation, please refer to the [documentation hosted at Read the Docs](https://graphbin2.readthedocs.io/).**

**Note:** Due to recent requests from the community, we have added support for long-read assemblies produced from Flye. Please note that GraphBin2 has not been tested extensively on long-read assemblies. We originally developed GraphBin2 for short-read assemblies. Long-read assemblies might have sparsely connected graphs which can make the label propagation process less effective and may not result in improvements.

**NEW:** GraphBin2 is now available on Bioconda at [https://anaconda.org/bioconda/graphbin2](https://anaconda.org/bioconda/graphbin2) and on PyPI at [https://pypi.org/project/graphbin2/](https://pypi.org/project/graphbin2/).


## Installing GraphBin2

### Using Conda (recommended)

You can install GraphBin2 using the [bioconda](https://anaconda.org/bioconda/graphbin2) distribution. You can download 
[Anaconda](https://www.anaconda.com/distribution/) or [Miniconda](https://docs.conda.io/en/latest/miniconda.html) which contains `conda`.

```shell
# add channels
conda config --add channels defaults
conda config --add channels bioconda
conda config --add channels conda-forge

# create conda environment and install
conda create -n graphbin2 graphbin2

# activate conda environment
conda activate graphbin2

# check graphbin2 installation
graphbin2 --help
```

### Using pip

You can install GraphBin2 using `pip` from the [PyPI](https://pypi.org/project/graphbin2/) distribution.

```shell
# install graphbin2
pip install graphbin2

# check graphbin2 installation
graphbin2 --help
```

For ***development*** purposes, please clone the repository and install via [flit](https://pypi.org/project/flit/).

```shell
# clone repository to your local machine
git clone https://github.com/metagentools/GraphBin2.git

# go to repo directory
cd GraphBin2

# install flit
pip install flit

# install graphbin2 via flit
flit install -s --python `which python`
```

## Example Usage

```shell
# SPAdes version
graphbin2 --assembler spades --graph /path/to/graph_file.gfa --contigs /path/to/contigs.fasta --paths /path/to/paths_file.paths --binned /path/to/binning_result.csv --abundance /path/to/abundance.tsv --output /path/to/output_folder

# SGA version
graphbin2 --assembler sga --graph /path/to/graph_file.asqg --contigs /path/to/contigs.fa --binned /path/to/binning_result.csv --abundance /path/to/abundance.tsv --output /path/to/output_folder

# MEGAHIT version
graphbin2 --assembler megahit --graph /path/to/final.gfa --contigs /path/to/final.contigs.fa --binned /path/to/binning_result.csv --abundance /path/to/abundance.tsv --output /path/to/output_folder

# metaFlye version
graphbin2 --assembler flye --graph /path/to/graph_file.gfa --contigs /path/to/assembly.fasta --paths /path/to/assembly_info.txt --binned /path/to/binning_result.csv --abundance /path/to/abundance.tsv --output /path/to/output_folder
```


## Citation

GraphBin2 was accepted for presentation at the 20th International Workshop on Algorithms in Bioinformatics ([WABI 2020](http://algo2020.di.unipi.it/WABI2020/)) and is published in [Leibniz International Proceedings in Informatics (LIPIcs)](https://www.dagstuhl.de/dagpub/978-3-95977-161-0) DOI: [10.4230/LIPIcs.WABI.2020.8](https://doi.org/10.4230/LIPIcs.WABI.2020.8). 

> Vijini G. Mallawaarachchi, Anuradha S. Wickramarachchi, and Yu Lin. GraphBin2: Refined and Overlapped Binning of Metagenomic Contigs Using Assembly Graphs. In 20th International Workshop on Algorithms in Bioinformatics (WABI 2020). Leibniz International Proceedings in Informatics (LIPIcs), Volume 172, pp. 8:1-8:21, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2020). DOI: https://doi.org/10.4230/LIPIcs.WABI.2020.8

An extended journal article of GraphBin2 has been published in BMC Algorithms for Molecular Biology at DOI: [10.1186/s13015-021-00185-6](https://doi.org/10.1186/s13015-021-00185-6).

> Mallawaarachchi, V.G., Wickramarachchi, A.S. & Lin, Y. Improving metagenomic binning results with overlapped bins using assembly graphs. Algorithms Mol Biol 16, 3 (2021). https://doi.org/10.1186/s13015-021-00185-6

If you use GraphBin2 in your work, please cite the following publications.

```bibtex
@InProceedings{mallawaarachchi_et_al:LIPIcs:2020:12797,
  author =	{Vijini G. Mallawaarachchi and Anuradha S. Wickramarachchi and Yu Lin},
  title =	{{GraphBin2: Refined and Overlapped Binning of Metagenomic Contigs Using Assembly Graphs}},
  booktitle =	{20th International Workshop on Algorithms in Bioinformatics (WABI 2020)},
  pages =	{8:1--8:21},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-161-0},
  ISSN =	{1868-8969},
  year =	{2020},
  volume =	{172},
  editor =	{Carl Kingsford and Nadia Pisanti},
  publisher =	{Schloss Dagstuhl--Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/opus/volltexte/2020/12797},
  URN =		{urn:nbn:de:0030-drops-127974},
  doi =		{10.4230/LIPIcs.WABI.2020.8},
  annote =	{Keywords: Metagenomics binning, contigs, assembly graphs, overlapped binning}
}

@Article{Mallawaarachchi2021,
  author={Mallawaarachchi, Vijini G. and Wickramarachchi, Anuradha S. and Lin, Yu},
  title={Improving metagenomic binning results with overlapped bins using assembly graphs},
  journal={Algorithms for Molecular Biology},
  year={2021},
  month={May},
  day={04},
  volume={16},
  number={1},
  pages={3},
  abstract={Metagenomic sequencing allows us to study the structure, diversity and ecology in microbial communities without the necessity of obtaining pure cultures. In many metagenomics studies, the reads obtained from metagenomics sequencing are first assembled into longer contigs and these contigs are then binned into clusters of contigs where contigs in a cluster are expected to come from the same species. As different species may share common sequences in their genomes, one assembled contig may belong to multiple species. However, existing tools for binning contigs only support non-overlapped binning, i.e., each contig is assigned to at most one bin (species).},
  issn={1748-7188},
  doi={10.1186/s13015-021-00185-6},
  url={https://doi.org/10.1186/s13015-021-00185-6}
}
```

## Funding

GraphBin2 is funded by an [Essential Open Source Software for Science Grant](https://chanzuckerberg.com/eoss/proposals/cogent3-python-apis-for-iq-tree-and-graphbin-via-a-plug-in-architecture/) from the Chan Zuckerberg Initiative.

<p align="left">
  <img src="https://chanzuckerberg.com/wp-content/themes/czi/img/logo.svg" width="300">
</p>


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "graphbin2",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.13,>=3.9",
    "maintainer_email": null,
    "keywords": "metagenomics, binning, contigs, bioinformatics",
    "author": null,
    "author_email": "Vijini Mallawaarachchi <viji.mallawaarachchi@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/13/08/c1a0c0f91638b3f3cfd0b5c20b6cfd2a1809783064bd4093cc08d3162204/graphbin2-1.3.3.tar.gz",
    "platform": null,
    "description": "<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/metagentools/GraphBin2/master/docs/images/GraphBin2_Logo_light.png#gh-light-mode-only\" width=\"450\" title=\"GraphBin2 Logo\" alt=\"GraphBin2 Logo\">\n  <img src=\"https://raw.githubusercontent.com/metagentools/GraphBin2/master/docs/images/GraphBin2_Logo_dark.png#gh-dark-mode-only\" width=\"450\" title=\"GraphBin2 Logo\" alt=\"GraphBin2 Logo\">\n</p>\n\n# GraphBin2: Refined and Overlapped Binning of Metagenomic Contigs Using Assembly Graphs\n\n[![DOI](https://img.shields.io/badge/DOI-10.4230/LIPIcs.WABI.2020.8-informational)](https://doi.org/10.4230/LIPIcs.WABI.2020.8)\n[![DOI](https://img.shields.io/badge/DOI-10.1186/s13015--021--00185--6-yellow)](https://doi.org/10.1186/s13015-021-00185-6)\n[![DOI](https://zenodo.org/badge/262936904.svg)](https://zenodo.org/badge/latestdoi/262936904)\n![GitHub](https://img.shields.io/github/license/Vini2/GraphBin2)\n[![install with bioconda](https://img.shields.io/badge/install%20with-bioconda-brightgreen.svg?style=flat)](http://bioconda.github.io/recipes/graphbin2/README.html)\n[![PyPI version](https://badge.fury.io/py/graphbin2.svg)](https://badge.fury.io/py/graphbin2)\n[![Downloads](https://static.pepy.tech/badge/graphbin2)](https://pepy.tech/project/graphbin2)\n[![CI](https://github.com/metagentools/GraphBin2/actions/workflows/testing.yml/badge.svg)](https://github.com/metagentools/GraphBin2/actions/workflows/testing.yml)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![CodeQL](https://github.com/metagentools/GraphBin2/actions/workflows/codeql.yml/badge.svg)](https://github.com/metagentools/GraphBin2/actions/workflows/codeql.yml)\n[![Documentation Status](https://readthedocs.org/projects/graphbin2/badge/?version=latest)](https://graphbin2.readthedocs.io/en/latest/?badge=latest)\n\n\nGraphBin2 is an extension of [GraphBin](https://github.com/Vini2/GraphBin) which refines the binning results obtained from existing tools and, more importantly, is able to assign contigs to multiple bins. GraphBin2 uses the connectivity and coverage information from assembly graphs to adjust existing binning results on contigs and to infer contigs shared by multiple species.\n\n**For detailed instructions on installation, usage and visualisation, please refer to the [documentation hosted at Read the Docs](https://graphbin2.readthedocs.io/).**\n\n**Note:** Due to recent requests from the community, we have added support for long-read assemblies produced from Flye. Please note that GraphBin2 has not been tested extensively on long-read assemblies. We originally developed GraphBin2 for short-read assemblies. Long-read assemblies might have sparsely connected graphs which can make the label propagation process less effective and may not result in improvements.\n\n**NEW:** GraphBin2 is now available on Bioconda at [https://anaconda.org/bioconda/graphbin2](https://anaconda.org/bioconda/graphbin2) and on PyPI at [https://pypi.org/project/graphbin2/](https://pypi.org/project/graphbin2/).\n\n\n## Installing GraphBin2\n\n### Using Conda (recommended)\n\nYou can install GraphBin2 using the [bioconda](https://anaconda.org/bioconda/graphbin2) distribution. You can download \n[Anaconda](https://www.anaconda.com/distribution/) or [Miniconda](https://docs.conda.io/en/latest/miniconda.html) which contains `conda`.\n\n```shell\n# add channels\nconda config --add channels defaults\nconda config --add channels bioconda\nconda config --add channels conda-forge\n\n# create conda environment and install\nconda create -n graphbin2 graphbin2\n\n# activate conda environment\nconda activate graphbin2\n\n# check graphbin2 installation\ngraphbin2 --help\n```\n\n### Using pip\n\nYou can install GraphBin2 using `pip` from the [PyPI](https://pypi.org/project/graphbin2/) distribution.\n\n```shell\n# install graphbin2\npip install graphbin2\n\n# check graphbin2 installation\ngraphbin2 --help\n```\n\nFor ***development*** purposes, please clone the repository and install via [flit](https://pypi.org/project/flit/).\n\n```shell\n# clone repository to your local machine\ngit clone https://github.com/metagentools/GraphBin2.git\n\n# go to repo directory\ncd GraphBin2\n\n# install flit\npip install flit\n\n# install graphbin2 via flit\nflit install -s --python `which python`\n```\n\n## Example Usage\n\n```shell\n# SPAdes version\ngraphbin2 --assembler spades --graph /path/to/graph_file.gfa --contigs /path/to/contigs.fasta --paths /path/to/paths_file.paths --binned /path/to/binning_result.csv --abundance /path/to/abundance.tsv --output /path/to/output_folder\n\n# SGA version\ngraphbin2 --assembler sga --graph /path/to/graph_file.asqg --contigs /path/to/contigs.fa --binned /path/to/binning_result.csv --abundance /path/to/abundance.tsv --output /path/to/output_folder\n\n# MEGAHIT version\ngraphbin2 --assembler megahit --graph /path/to/final.gfa --contigs /path/to/final.contigs.fa --binned /path/to/binning_result.csv --abundance /path/to/abundance.tsv --output /path/to/output_folder\n\n# metaFlye version\ngraphbin2 --assembler flye --graph /path/to/graph_file.gfa --contigs /path/to/assembly.fasta --paths /path/to/assembly_info.txt --binned /path/to/binning_result.csv --abundance /path/to/abundance.tsv --output /path/to/output_folder\n```\n\n\n## Citation\n\nGraphBin2 was accepted for presentation at the 20th International Workshop on Algorithms in Bioinformatics ([WABI 2020](http://algo2020.di.unipi.it/WABI2020/)) and is published in [Leibniz International Proceedings in Informatics (LIPIcs)](https://www.dagstuhl.de/dagpub/978-3-95977-161-0) DOI: [10.4230/LIPIcs.WABI.2020.8](https://doi.org/10.4230/LIPIcs.WABI.2020.8). \n\n> Vijini G. Mallawaarachchi, Anuradha S. Wickramarachchi, and Yu Lin. GraphBin2: Refined and Overlapped Binning of Metagenomic Contigs Using Assembly Graphs. In 20th International Workshop on Algorithms in Bioinformatics (WABI 2020). Leibniz International Proceedings in Informatics (LIPIcs), Volume 172, pp. 8:1-8:21, Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik (2020). DOI: https://doi.org/10.4230/LIPIcs.WABI.2020.8\n\nAn extended journal article of GraphBin2 has been published in BMC Algorithms for Molecular Biology at DOI: [10.1186/s13015-021-00185-6](https://doi.org/10.1186/s13015-021-00185-6).\n\n> Mallawaarachchi, V.G., Wickramarachchi, A.S. & Lin, Y. Improving metagenomic binning results with overlapped bins using assembly graphs. Algorithms Mol Biol 16, 3 (2021). https://doi.org/10.1186/s13015-021-00185-6\n\nIf you use GraphBin2 in your work, please cite the following publications.\n\n```bibtex\n@InProceedings{mallawaarachchi_et_al:LIPIcs:2020:12797,\n  author =\t{Vijini G. Mallawaarachchi and Anuradha S. Wickramarachchi and Yu Lin},\n  title =\t{{GraphBin2: Refined and Overlapped Binning of Metagenomic Contigs Using Assembly Graphs}},\n  booktitle =\t{20th International Workshop on Algorithms in Bioinformatics (WABI 2020)},\n  pages =\t{8:1--8:21},\n  series =\t{Leibniz International Proceedings in Informatics (LIPIcs)},\n  ISBN =\t{978-3-95977-161-0},\n  ISSN =\t{1868-8969},\n  year =\t{2020},\n  volume =\t{172},\n  editor =\t{Carl Kingsford and Nadia Pisanti},\n  publisher =\t{Schloss Dagstuhl--Leibniz-Zentrum f{\\\"u}r Informatik},\n  address =\t{Dagstuhl, Germany},\n  URL =\t\t{https://drops.dagstuhl.de/opus/volltexte/2020/12797},\n  URN =\t\t{urn:nbn:de:0030-drops-127974},\n  doi =\t\t{10.4230/LIPIcs.WABI.2020.8},\n  annote =\t{Keywords: Metagenomics binning, contigs, assembly graphs, overlapped binning}\n}\n\n@Article{Mallawaarachchi2021,\n  author={Mallawaarachchi, Vijini G. and Wickramarachchi, Anuradha S. and Lin, Yu},\n  title={Improving metagenomic binning results with overlapped bins using assembly graphs},\n  journal={Algorithms for Molecular Biology},\n  year={2021},\n  month={May},\n  day={04},\n  volume={16},\n  number={1},\n  pages={3},\n  abstract={Metagenomic sequencing allows us to study the structure, diversity and ecology in microbial communities without the necessity of obtaining pure cultures. In many metagenomics studies, the reads obtained from metagenomics sequencing are first assembled into longer contigs and these contigs are then binned into clusters of contigs where contigs in a cluster are expected to come from the same species. As different species may share common sequences in their genomes, one assembled contig may belong to multiple species. However, existing tools for binning contigs only support non-overlapped binning, i.e., each contig is assigned to at most one bin (species).},\n  issn={1748-7188},\n  doi={10.1186/s13015-021-00185-6},\n  url={https://doi.org/10.1186/s13015-021-00185-6}\n}\n```\n\n## Funding\n\nGraphBin2 is funded by an [Essential Open Source Software for Science Grant](https://chanzuckerberg.com/eoss/proposals/cogent3-python-apis-for-iq-tree-and-graphbin-via-a-plug-in-architecture/) from the Chan Zuckerberg Initiative.\n\n<p align=\"left\">\n  <img src=\"https://chanzuckerberg.com/wp-content/themes/czi/img/logo.svg\" width=\"300\">\n</p>\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "GraphBin2: Refined and Overlapped Binning of Metagenomic Contigs Using Assembly Graphs",
    "version": "1.3.3",
    "project_urls": {
        "Home": "https://github.com/metagentools/GraphBin2"
    },
    "split_keywords": [
        "metagenomics",
        " binning",
        " contigs",
        " bioinformatics"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b48f836b1bc570d72fc17ca73dcd8dd6c75704da6c10f3a19eaa5543a9af0dfc",
                "md5": "fa2726024659d5a18d63378003aa5ab6",
                "sha256": "37c70ec2feb2a417340fe980ee8ef35f005145c3b0345160363993e6f929ad5a"
            },
            "downloads": -1,
            "filename": "graphbin2-1.3.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fa2726024659d5a18d63378003aa5ab6",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.13,>=3.9",
            "size": 37556,
            "upload_time": "2024-09-26T04:49:30",
            "upload_time_iso_8601": "2024-09-26T04:49:30.984938Z",
            "url": "https://files.pythonhosted.org/packages/b4/8f/836b1bc570d72fc17ca73dcd8dd6c75704da6c10f3a19eaa5543a9af0dfc/graphbin2-1.3.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1308c1a0c0f91638b3f3cfd0b5c20b6cfd2a1809783064bd4093cc08d3162204",
                "md5": "04588e42d2670db696f3aecfbedb1c7b",
                "sha256": "572f01039dce2a73daa5e3b8a514e243452ba74a55283b1494d886cb2c382407"
            },
            "downloads": -1,
            "filename": "graphbin2-1.3.3.tar.gz",
            "has_sig": false,
            "md5_digest": "04588e42d2670db696f3aecfbedb1c7b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.13,>=3.9",
            "size": 904171,
            "upload_time": "2024-09-26T04:49:32",
            "upload_time_iso_8601": "2024-09-26T04:49:32.625998Z",
            "url": "https://files.pythonhosted.org/packages/13/08/c1a0c0f91638b3f3cfd0b5c20b6cfd2a1809783064bd4093cc08d3162204/graphbin2-1.3.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-26 04:49:32",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "metagentools",
    "github_project": "GraphBin2",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "graphbin2"
}
        
Elapsed time: 1.07043s