# GLUE (Graph-Linked Unified Embedding)
[](https://github.com/gao-lab/GLUE/stargazers)
[](https://pypi.org/project/scglue)
[](https://anaconda.org/bioconda/scglue)
[](https://scglue.readthedocs.io/en/latest/?badge=latest)
[](https://github.com/gao-lab/GLUE/actions/workflows/build.yml)
[](https://codecov.io/gh/gao-lab/GLUE)
[](https://github.com/python/black)
[](https://opensource.org/licenses/MIT)
Graph-linked unified embedding for single-cell multi-omics data integration

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).
A Chinese version is also available [here](https://scglue.readthedocs.io/zh_CN/latest/).
## 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": null,
"name": "scglue",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "bioinformatics, deep-learning, single-cell, single-cell-multiomics",
"author": null,
"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/58/6c/ef3ec82a9c0d1ef7e08983fb194043b506a2d0e2a3ee6c93f6244417b93b/scglue-0.4.0.tar.gz",
"platform": null,
"description": "# GLUE (Graph-Linked Unified Embedding)\n\n[](https://github.com/gao-lab/GLUE/stargazers)\n[](https://pypi.org/project/scglue)\n[](https://anaconda.org/bioconda/scglue)\n[](https://scglue.readthedocs.io/en/latest/?badge=latest)\n[](https://github.com/gao-lab/GLUE/actions/workflows/build.yml)\n[](https://codecov.io/gh/gao-lab/GLUE)\n[](https://github.com/python/black)\n[](https://opensource.org/licenses/MIT)\n\nGraph-linked unified embedding for single-cell multi-omics data integration\n\n\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\nA Chinese version is also available [here](https://scglue.readthedocs.io/zh_CN/latest/).\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": null,
"summary": "Graph-linked unified embedding for unpaired single-cell multi-omics data integration",
"version": "0.4.0",
"project_urls": {
"Github": "https://github.com/gao-lab/GLUE"
},
"split_keywords": [
"bioinformatics",
" deep-learning",
" single-cell",
" single-cell-multiomics"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "573b729cb7feea34c7e24c64d3340f825e826e2c87401e1ca99f1126ed7b185f",
"md5": "139c2b7d91e916c3b167f92357b80b9c",
"sha256": "9c3219b196a759b4c95d341e9d09d1694b3f83518b961d2769440205b5fa460a"
},
"downloads": -1,
"filename": "scglue-0.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "139c2b7d91e916c3b167f92357b80b9c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 86676,
"upload_time": "2025-09-03T03:33:39",
"upload_time_iso_8601": "2025-09-03T03:33:39.440239Z",
"url": "https://files.pythonhosted.org/packages/57/3b/729cb7feea34c7e24c64d3340f825e826e2c87401e1ca99f1126ed7b185f/scglue-0.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "586cef3ec82a9c0d1ef7e08983fb194043b506a2d0e2a3ee6c93f6244417b93b",
"md5": "2f83a05b67dd4804eb3d1c7dd15e0604",
"sha256": "ac57432e030dd0d7460604c63d66b7a2a510cfe1ab8c9c67cc4aa3c4d5fdb021"
},
"downloads": -1,
"filename": "scglue-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "2f83a05b67dd4804eb3d1c7dd15e0604",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 77223,
"upload_time": "2025-09-03T03:33:40",
"upload_time_iso_8601": "2025-09-03T03:33:40.857574Z",
"url": "https://files.pythonhosted.org/packages/58/6c/ef3ec82a9c0d1ef7e08983fb194043b506a2d0e2a3ee6c93f6244417b93b/scglue-0.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-03 03:33:40",
"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"
}