# GLUE (Graph-Linked Unified Embedding)
[![license-badge](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![pypi-badge](https://img.shields.io/pypi/v/scglue)](https://pypi.org/project/scglue)
[![conda-badge](https://anaconda.org/bioconda/scglue/badges/version.svg)](https://anaconda.org/bioconda/scglue)
[![docs-badge](https://readthedocs.org/projects/scglue/badge/?version=latest)](https://scglue.readthedocs.io/en/latest/?badge=latest)
[![build-badge](https://github.com/gao-lab/GLUE/actions/workflows/build.yml/badge.svg)](https://github.com/gao-lab/GLUE/actions/workflows/build.yml)
[![coverage-badge](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/Jeff1995/e704b2f886ff6a37477311b90fdf7efa/raw/coverage.json)](https://github.com/gao-lab/GLUE/actions/workflows/build.yml)
Graph-linked unified embedding for single-cell multi-omics data integration
![Model architecture](docs/_static/architecture.svg)
For more details, please check out our [publication](https://doi.org/10.1038/s41587-022-01284-4).
## Directory structure
```
.
├── scglue # Main Python package
├── data # Data files
├── evaluation # Method evaluation pipelines
├── experiments # Experiments and case studies
├── tests # Unit tests for the Python package
├── docs # Documentation files
├── custom # Customized third-party packages
├── packrat # Reproducible R environment via packrat
├── env.yaml # Reproducible Python environment via conda
├── pyproject.toml # Python package metadata
├── LICENSE
└── README.md
```
## Installation
The `scglue` package can be installed via conda using one of the following commands:
```sh
conda install -c conda-forge -c bioconda scglue # CPU only
conda install -c conda-forge -c bioconda scglue pytorch-gpu # With GPU support
```
Or, it can also be installed via pip:
```sh
pip install scglue
```
> Installing within a
> [conda environment](https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html)
> is recommended.
## Usage
Please checkout the documentations and tutorials at
[scglue.readthedocs.io](https://scglue.readthedocs.io).
## Development
Install scglue in editable form via flit (first install flit via conda or pip
if not installed already):
```sh
flit install -s
```
Run unit tests:
```sh
pytest --cov="scglue" --cov-report="term-missing" tests [--cpu-only]
```
Build documentation:
```sh
sphinx-build -b gettext docs docs/_build/gettext
sphinx-intl update -p docs/_build/gettext -l zh_CN -d docs/locale
sphinx-build -b html -D language=en docs docs/_build/html/en # English version
sphinx-build -b html -D language=zh_CN docs docs/_build/html/zh_CN # Chinese version
```
## Reproduce results
1. Checkout the repository to v0.2.0:
```sh
git checkout tags/v0.2.0
```
2. Create a local conda environment using the `env.yaml` file,
and then install scglue:
```sh
conda env create -p conda -f env.yaml && conda activate ./conda
flit install -s
```
3. Set up a project-specific R environment:
```R
packrat::restore() # Packrat should be automatically installed if not available.
install.packages("data/download/Saunders-2018/DropSeq.util_2.0.tar.gz", repos = NULL)
install.packages("custom/Seurat_4.0.2.tar.gz", lib = "packrat/custom", repos = NULL)
```
> R 4.0.2 was used during the project, but any version above 4.0.0 should be compatible.
4. Follow instructions in `data` to prepare the necessary data.
5. Follow instructions in `evaluation` for method evaluation.
6. Follow instructions in `experiments` for case studies.
Raw data
{
"_id": null,
"home_page": "",
"name": "scglue",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "bioinformatics,deep-learning,single-cell,single-cell-multiomics",
"author": "",
"author_email": "Zhi-Jie Cao <caozj@mail.cbi.pku.edu.cn>, Xin-Ming Tu <xinmingtu@pku.edu.cn>",
"download_url": "https://files.pythonhosted.org/packages/72/91/b542b29a1ccfbf1d22f48e98a2960da850495eb1c935f30dfffef00b758b/scglue-0.3.2.tar.gz",
"platform": null,
"description": "# GLUE (Graph-Linked Unified Embedding)\n\n[![license-badge](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![pypi-badge](https://img.shields.io/pypi/v/scglue)](https://pypi.org/project/scglue)\n[![conda-badge](https://anaconda.org/bioconda/scglue/badges/version.svg)](https://anaconda.org/bioconda/scglue)\n[![docs-badge](https://readthedocs.org/projects/scglue/badge/?version=latest)](https://scglue.readthedocs.io/en/latest/?badge=latest)\n[![build-badge](https://github.com/gao-lab/GLUE/actions/workflows/build.yml/badge.svg)](https://github.com/gao-lab/GLUE/actions/workflows/build.yml)\n[![coverage-badge](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/Jeff1995/e704b2f886ff6a37477311b90fdf7efa/raw/coverage.json)](https://github.com/gao-lab/GLUE/actions/workflows/build.yml)\n\nGraph-linked unified embedding for single-cell multi-omics data integration\n\n![Model architecture](docs/_static/architecture.svg)\n\nFor more details, please check out our [publication](https://doi.org/10.1038/s41587-022-01284-4).\n\n## Directory structure\n\n```\n.\n\u251c\u2500\u2500 scglue # Main Python package\n\u251c\u2500\u2500 data # Data files\n\u251c\u2500\u2500 evaluation # Method evaluation pipelines\n\u251c\u2500\u2500 experiments # Experiments and case studies\n\u251c\u2500\u2500 tests # Unit tests for the Python package\n\u251c\u2500\u2500 docs # Documentation files\n\u251c\u2500\u2500 custom # Customized third-party packages\n\u251c\u2500\u2500 packrat # Reproducible R environment via packrat\n\u251c\u2500\u2500 env.yaml # Reproducible Python environment via conda\n\u251c\u2500\u2500 pyproject.toml # Python package metadata\n\u251c\u2500\u2500 LICENSE\n\u2514\u2500\u2500 README.md\n```\n\n## Installation\n\nThe `scglue` package can be installed via conda using one of the following commands:\n\n```sh\nconda install -c conda-forge -c bioconda scglue # CPU only\nconda install -c conda-forge -c bioconda scglue pytorch-gpu # With GPU support\n```\n\nOr, it can also be installed via pip:\n\n```sh\npip install scglue\n```\n\n> Installing within a\n> [conda environment](https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html)\n> is recommended.\n\n## Usage\n\nPlease checkout the documentations and tutorials at\n[scglue.readthedocs.io](https://scglue.readthedocs.io).\n\n## Development\n\nInstall scglue in editable form via flit (first install flit via conda or pip\nif not installed already):\n\n```sh\nflit install -s\n```\n\nRun unit tests:\n\n```sh\npytest --cov=\"scglue\" --cov-report=\"term-missing\" tests [--cpu-only]\n```\n\nBuild documentation:\n\n```sh\nsphinx-build -b gettext docs docs/_build/gettext\nsphinx-intl update -p docs/_build/gettext -l zh_CN -d docs/locale\nsphinx-build -b html -D language=en docs docs/_build/html/en # English version\nsphinx-build -b html -D language=zh_CN docs docs/_build/html/zh_CN # Chinese version\n```\n\n## Reproduce results\n\n1. Checkout the repository to v0.2.0:\n\n ```sh\n git checkout tags/v0.2.0\n ```\n\n2. Create a local conda environment using the `env.yaml` file,\nand then install scglue:\n\n ```sh\n conda env create -p conda -f env.yaml && conda activate ./conda\n flit install -s\n ```\n\n3. Set up a project-specific R environment:\n\n ```R\n packrat::restore() # Packrat should be automatically installed if not available.\n install.packages(\"data/download/Saunders-2018/DropSeq.util_2.0.tar.gz\", repos = NULL)\n install.packages(\"custom/Seurat_4.0.2.tar.gz\", lib = \"packrat/custom\", repos = NULL)\n ```\n\n > R 4.0.2 was used during the project, but any version above 4.0.0 should be compatible.\n\n4. Follow instructions in `data` to prepare the necessary data.\n5. Follow instructions in `evaluation` for method evaluation.\n6. Follow instructions in `experiments` for case studies.\n\n",
"bugtrack_url": null,
"license": "",
"summary": "Graph-linked unified embedding for unpaired single-cell multi-omics data integration",
"version": "0.3.2",
"project_urls": {
"Github": "https://github.com/gao-lab/GLUE"
},
"split_keywords": [
"bioinformatics",
"deep-learning",
"single-cell",
"single-cell-multiomics"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "dc97d4730124de7edb1be55b48bbcb7057587708ca52d0a75bca275969969cd4",
"md5": "a6fdc92d7d869a38c9781e9e83e78518",
"sha256": "efec4e3f8cc3ffce362e180e4912327d4aacc2dd0a76a6cb06e851a426695d6d"
},
"downloads": -1,
"filename": "scglue-0.3.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a6fdc92d7d869a38c9781e9e83e78518",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 81121,
"upload_time": "2022-08-26T12:41:43",
"upload_time_iso_8601": "2022-08-26T12:41:43.866799Z",
"url": "https://files.pythonhosted.org/packages/dc/97/d4730124de7edb1be55b48bbcb7057587708ca52d0a75bca275969969cd4/scglue-0.3.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7291b542b29a1ccfbf1d22f48e98a2960da850495eb1c935f30dfffef00b758b",
"md5": "d952994a889d378a3a771f729db460fd",
"sha256": "fd57ebfa400233cbb1ab4fab4ad6a9dbf4db2c5ca715ba31c71c7a36cc931241"
},
"downloads": -1,
"filename": "scglue-0.3.2.tar.gz",
"has_sig": false,
"md5_digest": "d952994a889d378a3a771f729db460fd",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 71100,
"upload_time": "2022-08-26T12:41:45",
"upload_time_iso_8601": "2022-08-26T12:41:45.867742Z",
"url": "https://files.pythonhosted.org/packages/72/91/b542b29a1ccfbf1d22f48e98a2960da850495eb1c935f30dfffef00b758b/scglue-0.3.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-08-26 12:41:45",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "gao-lab",
"github_project": "GLUE",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "scglue"
}