README.md

SlideCNA

Introduction

SlideCNA is a method to call copy number alterations (CNA) from spatial transcriptomics data (adapted for Slide-seq data). SlideCNA uses expression smoothing across the genome to extract changes in copy number and implements a spatio-molecular binning process to boost signal and consolidate reads. Based on the CNA profiles, SlideCNA can identify clusters across space.

Example Jupyter notebooks of SlideCNA applied to Slide-seq, snRNA-seq, and Slide-seq with TACCO bead splitting data are available here: https://github.com/dkzhang777/SlideCNA_Analysis.

Installation

New Conda Environment

Create a new conda environment using the SlideCNA_env.yml file from the SlideCNA repository:

conda env create -f "https://github.com/dkzhang777/SlideCNA/blob/main/inst/SlideCNA_env.yml"

Install SlideCNA through R from Github:

library(devtools)
devtools::install_github("dkzhang777/SlideCNA@main", force=TRUE)
library(SlideCNA)

Preparation

Preparation of Slide-seq data raw counts matrix and meta data with cell type annotations. Metadata should contain the following columns in the provided format:

bc (chr): bead labels \ cluster_type (chr): annotation of the bead as 'Normal' (Non-malignant) or 'Malignant'

and, if using spatially-aware binning:

pos_x (dbl): x-coordinate bead position\ pos_y (dbl): y-coordinate bead position

Running SlideCNA

run_slide_cna(counts, 
              beads_df, 
              gene_pos, 
              output_directory, 
              plot_directory,
              spatial=TRUE,
              roll_mean_window=101,
              avg_bead_per_bin=12,
              pos=TRUE, 
              pos_k=55, 
              ex_k=1)

Parameter Descriptions

counts (data.frame): raw counts (genes x beads) \ beads_df (data.frame): annotations of each bead (beads x annotations); contains columns 'bc' for bead names, 'cluster_type' for annotations of 'Normal' or 'Malignant', 'pos_x' for x-coordinate bead positions, and 'pos_y' for y-coordinate bead positions \ gene_pos (data.frame): table with columns for GENE, chr, start, end, rel_gene_pos (1 : # of genes on chromosome)\ output_directory (char): output directory path\ plot_directory (char): output plot directory path\ spatial (bool): TRUE if using spatial information FALSE if not\ roll_mean_window(int): integer number of adjacent genes for which to average over in pyramidal weighting scheme\ avg_bead_per_bin (int): integer of average number of beads there should be per bin\ pos (bool): TRUE if doing spatial and expressional binning, FALSE if just expressional binning\ pos_k (numeric): positional weight\ ex_k (numeric): expressional weight

Results

Results will appear in output_directory and plot_directory. Key output files are described below:

so.rds Seurat object of Slide-seq data \ md.txt metadata of Slide-seq data with Seurat annotations \ md_bin.txt metadata of binned Slide-seq data \ dat_bin_scaled.txt CNA scores of binned Slide-seq data after applying pyramidal weighting scheme to expression values and normalizing for UMI per bin used for CNA score heat maps and CNA-based clustering \ best_k_malig.rds value of optimal number of malignant clusters \ cluster_labels_all.txt cluster assignments when performing cluster designation on all binned beads \ cluster_labels_malig.txt cluster assignments when performing cluster determination on only malignant binned beads \ cluster_markers_all.txt DEGs per cluster when performing cluster designation on all binned beads \ cluster_markers_malig.txt DEGs per cluster when performing cluster determination on only malignant binned beads \ go_terms_all.txt GO terms per cluster when performing cluster designation on all binned beads \ go_terms_malig.txt GO terms per cluster when performing cluster determination on only malignant binned beads



Try the SlideCNA package in your browser

Any scripts or data that you put into this service are public.

SlideCNA documentation built on April 4, 2025, 1:59 a.m.