Skip to main content

scMAGCA, a multi-omics adversarial graph convolutional autoencoder framework to extract interpretable latent embeddings that characterize scMultiomics data.

Project description

scMAGCA

Single Cell Multi-omics adversarial graph convolutional autoencoder

We develop a multimodal graph convolutional model based on adversarial learning (scMAGCA) to jointly analyze scMulti-omics efficiently. scMAGCA effectively integrates scMulti-omics data and learns the joint representation. Extensive experiments demonstrate that scMAGCA exhibits superior clustering performance, outperforming existing multi-modal and single-modal clustering techniques across various single-cell multimodal datasets including CITE-seq datasets and SMAGE-seq datasets.

Table of contents

Dependencies

Python 3.9.7

Pytorch 2.1.0

Pytorch Geometric 2.5.2

Scanpy 1.9.6

Scipy 1.11.3

Sklearn 0.22.1

Numpy 1.22.0

Pandas 1.4.4

All experiments of scMAGCA in this study are conducted on Nvidia 4090 (24G) GPU. We suggest to install the dependencies in a conda environment (conda create -n scMAGCA).

Usage

Required objects in h5ad or h5 file for running scMAGCA

  1. X1: ADT/ATAC count matrix

  2. X2: mRNA count matrix

  3. Y: True labels (if exist)

  4. Batch: batch indicator (for multi-batch analysis)

Other objects in the h5ad or h5 files:

  1. ADT: feature names in ADT count matirx (only in CITE-seq data)

  2. GenesFromPeaks: feature names in the gene-to-cell matrix mapped from scATAC-seq (only in SMAGE-seq data)

  3. Genes: feature names in mRNA count matrix

  4. Cell types: cell type of each cell (if exist).

  5. Prepare the input data in h5ad or h5 format (All used datassets are in "datasets" floder and the generated cell-cell graph structure will be saved in the "raw" folder corresponding to the dataset).

  6. Run scMAGCA according to the running script in "scripts" folder (run_scMAGCA.sh for ADT/ATAC+mRNA data and run_scMAGCA_batch.sh for multi-batch data clustering). For example, you can execute scMAGCA on multi-batch dataset "GSE164378" by shell command: "bash run_scMAGCA_batch.sh".

Output

  1. scMAGCA outputs latent representation of data which can be used for further downstream analyses and visualized by Umap;
  2. scMAGCA outputs predicted label of data which can be used for calculating related evaluation indexs.
  3. Multi-batch scMAGCA outputs a latent representation of integrated datasets on which the batch effects are corrected.

Arguments

Structure: X1(ADT or ATAC), X2(RNA), Y(label, if exit), Batch (Batch indicator for multi-batch data clustering).

--n_cluster: number of clusters (K); scMAGCA will estimate K if this arguments is set to -1.

--data_file: data input and cell-cell graph structure saving path.

--pretrain_epochs: number of epochs for pre-training. Default: 400.

--maxiter: maximum epochs of training. Default: 2000.

--save_dir: the directory to store the outputs.

--embedding_file: if save embedding file. Default: Yes.

--prediction_file: if save prediction file. Default: Yes.

--ad_out: the output dim of discriminator. Default: 16 for CITE-Seq; 32 for SMAGE-Seq.

--tol: the criterion to stop the model, which is a percentage of changed labels. Default: 0.001.

--resolution: the resolution parameter to estimate K. Default: 0.08.

--filter1: if do feature selection on ADT/ATAC. Default: No.

--filter2: if do feature selection on Genes. Default: No.

--f1: number of high variable genes from ATAC(in X1) used for clustering if doing the featue selection. Default: 2000.

--f2: number of high variable genes from Genes(in X2) used for clustering if doing the featue selection. Default: 2000.

--device: training device. Default: cuda.

*We denote antibody-derived tags (ADTs) + Gene Expression as CITE-Seq and 10X Single-Cell Multiome ATAC + Gene Expression technology as SMAGE-seq for convenience.

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

scMAGCA-1.0.7.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scMAGCA-1.0.7-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

Details for the file scMAGCA-1.0.7.tar.gz.

File metadata

  • Download URL: scMAGCA-1.0.7.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.1

File hashes

Hashes for scMAGCA-1.0.7.tar.gz
Algorithm Hash digest
SHA256 967d2586b1a7c8cb52eb1c174a8f62a2694b9a7ba5e7e5f2cdae724c9f20b5f4
MD5 45fb06ff8984f5e60f7d9bbb6c661728
BLAKE2b-256 9034db99277277847cccdc7745c04356834fec466d445548e992cd57138ee2e7

See more details on using hashes here.

File details

Details for the file scMAGCA-1.0.7-py3-none-any.whl.

File metadata

  • Download URL: scMAGCA-1.0.7-py3-none-any.whl
  • Upload date:
  • Size: 24.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.1

File hashes

Hashes for scMAGCA-1.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8a345e19f6cb7c7191e80aeb73386300f1e2c38ed60d5265466fb40c01d9c06c
MD5 42589d5d49cfaf324fb21257453f19a3
BLAKE2b-256 078d78f7386f6c24717ea608b6386bb0c3cddcfe5806f2eccf43c34992c488e1

See more details on using hashes here.

Supported by

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