Metadata-Version: 2.4
Name: genvert
Version: 1.0.0
Summary: A simple and elegant Python library for gene identifier conversion.
Author-email: XJTU-WXY <wxyedward@outlook.com>
License: GPL-3.0
Project-URL: Project-URL, https://github.com/XJTU-WXY/Genvert
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pandas>=2.0
Requires-Dist: numpy>=1.22
Requires-Dist: requests>=2.32.0
Requires-Dist: tqdm
Provides-Extra: anndata
Requires-Dist: anndata>=0.9; extra == "anndata"
Provides-Extra: all
Requires-Dist: anndata>=0.9; extra == "all"
Provides-Extra: docs
Requires-Dist: sphinx>=6.0; extra == "docs"
Requires-Dist: pydata-sphinx-theme; extra == "docs"
Requires-Dist: numpydoc; extra == "docs"
Provides-Extra: test
Requires-Dist: pytest>=7.0; extra == "test"
Requires-Dist: anndata>=0.9; extra == "test"
Dynamic: license-file

<div class="title" align=center>
    <h1><img src="./docs/source/_static/logo.png" width="300"></h1>
	<div>An easy and elegant Python package for gene identifier conversion</div>
    <br/>
    <p>
        <img src="https://img.shields.io/github/license/LIYUESEN/Genvert">
    	<img src="https://img.shields.io/badge/python-≥3.9-blue">
        <img src="https://img.shields.io/github/stars/XJTU-WXY/Genvert?style=social">
</div>

## 🚩 Introduction
Genvert is a package that provides an easy and elegant way for gene identifier conversion in Python.

**Main Features:**
- **Native Python implementation:** no dependency on R and no need to configure an R environment.
- **Reliable and up-to-date:** uses the gene annotation databases officially maintained by Bioconductor under an open-source license.
- **No reliance on online services:** except for downloading the databases, all functions run locally, quickly, and without having to worry about network connections and firewalls.
- **Supports multiple species, chip platforms and gene ID types:** up to 16 species and 87 chip platforms are supported. Gene IDs can be converted between entrez ID, accession number, ensembl ID, official symbol, alias symbol, etc. (the specific supported types depend on the species).
- **Supports multiple input formats:** in addition to converting a list of gene IDs directly, a gene expression matrix in a `pandas.DataFrame` or an `AnnData` object can also be accepted as input.
- **Automatically and elegantly handles many-to-many mappings:** several built-in strategies resolve conflicts and duplications caused by many-to-many mappings between two gene ID types.

## 📥 Installation
Genvert supports Python version ≥ 3.9.

```shell
# Core install, AnnData is NOT installed.
pip install genvert

# If you intend to convert / filter AnnData objects, add the extra:
pip install genvert[anndata]
```

## 📖 Documentation
For a detailed user guide and API reference, please see the [documentation](https://genvert.readthedocs.io/).

## 📝 Citation
If you use ``Genvert`` in your work, please cite the publication as follows:

**TODO**

## ⚖ License
Genvert is provided under the [GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.html).

Genvert uses gene annotation databases provided by the Bioconductor Package Maintainer under [Artistic-2.0](https://opensource.org/license/artistic-2-0).

The birth of Genvert is inseparable from the following excellent open-source projects:
- [pandas](https://pandas.pydata.org/)
- [numpy](https://numpy.org/)
- [anndata](https://anndata.readthedocs.io/)
- [scipy](https://scipy.org/)
- [requests](https://requests.readthedocs.io/)
- [tqdm](https://tqdm.github.io/)

The logo of Genvert is modified from the excellent work [DNA](https://thenounproject.com/icon/dna-2867610/) by [Luiz Carvalho](https://thenounproject.com/creator/luizcarvalhoid/) under the [CC BY 3.0 License](https://creativecommons.org/licenses/by/3.0/).

*Open source leads the world to a brighter future.*
