Skip to main content

scBiG for representation learning of single-cell gene expression data based on bipartite graph embedding

Project description

scBiG for representation learning of single-cell gene expression data based on bipartite graph embedding

Overview

alt

scBiG is a graph autoencoder network where the encoder based on multi-layer graph convolutional networks extracts high-order representations of cells and genes from the cell-gene bipartite graph, and the decoder based on the ZINB model uses these representations to reconstruct the gene expression matrix. By virtue of a model-driven self-supervised training paradigm, scBiG can effectively learn low-dimensional representations of both cells and genes, amenable to diverse downstream analytical tasks.

Installation

Please install scBiG from pypi with:

pip install scbig

Or clone this repository and use

pip install -e .

in the root of this repository.

Quick start

Load the data to be analyzed:

import scanpy as sc

adata = sc.AnnData(data)

Perform data pre-processing:

# Basic filtering
sc.pp.filter_genes(adata, min_cells=3)
sc.pp.filter_cells(adata, min_genes=200)

adata.raw = adata.copy()

# Total-count normlize, logarithmize the data, calculate the gene size factor 
sc.pp.normalize_per_cell(adata)
adata.obs['cs_factor'] = adata.obs.n_counts / np.median(adata.obs.n_counts)
sc.pp.log1p(adata)
adata.var['gs_factor'] = np.max(adata.X, axis=0, keepdims=True).reshape(-1)

Run the scBiG method:

from scbig import run_scbig
adata = run_scbig(adata)

The output adata contains the cell embeddings in adata.obsm['feat'] and the gene embeddings in adata.obsm['feat']. The embeddings can be used as input of other downstream analyses.

Please refer to tutorial.ipynb for a detailed description of scBiG's usage.

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

scbig-0.1.1.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

scbig-0.1.1-py3-none-any.whl (16.6 kB view details)

Uploaded Python 3

File details

Details for the file scbig-0.1.1.tar.gz.

File metadata

  • Download URL: scbig-0.1.1.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for scbig-0.1.1.tar.gz
Algorithm Hash digest
SHA256 26d49d8d7fc363f7d85a5a0f26fca0ac56d808eeda8d1bb68135bfb7dbfd0002
MD5 5f335d0092663d9be1050e4e78077122
BLAKE2b-256 7487560dd65870c6773c6b620ff8e3efc151814e9cbeccd788244c6184aedaf3

See more details on using hashes here.

File details

Details for the file scbig-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: scbig-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 16.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for scbig-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a7ab17c91862e9fddde5ff0380dfb5a0e6c2020842849fbccdfb6da490f304dd
MD5 36b197a0fdb89517988ce3779d07fbbb
BLAKE2b-256 e3a5f88ae94d9dfd0889ef9d6183b205a941c741d1428891cddc0f830ba61e80

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page