Skip to contents

CoPro (Co-Progression) is an R package for detecting co-progression between cell types in spatial transcriptomics data. It works in both supervised and unsupervised settings, enabling:

  • Cross-cell-type co-progression: Identify coordinated gene expression patterns between different cell types based on spatial proximity
  • Within-cell-type spatial patterns: Detect tissue structure-associated cellular programs within a single cell type
  • Multi-slide analysis: Analyze patterns consistently across multiple tissue slides

For detailed tutorials, function reference, and worked examples with real datasets, visit the CoPro documentation website.

Installation

You can install CoPro from GitHub with:

# install.packages("devtools")
devtools::install_github("Zhen-Miao/CoPro")

Quick Start

library(CoPro)

# Create a CoPro object from your data
obj <- newCoProSingle(
  normalizedData = your_expression_matrix,  # cells x genes
  locationData = your_location_data,        # data.frame with x, y columns
  metaData = your_metadata,                 # data.frame with cell annotations
  cellTypes = your_cell_type_labels         # character vector
)

# Run the analysis pipeline
obj <- subsetData(obj, cellTypesOfInterest = c("TypeA", "TypeB"))
obj <- computePCA(obj, nPCA = 30)
obj <- computeDistance(obj, distType = "Euclidean2D")
obj <- computeKernelMatrix(obj, sigmaValues = c(0.05, 0.1, 0.2))
obj <- runSkrCCA(obj, scalePCs = TRUE, nCC = 2)
obj <- computeNormalizedCorrelation(obj)
obj <- computeGeneAndCellScores(obj)

# Get results
cell_scores <- getCellScores(obj, sigma = obj@sigmaValueChoice, cellType = "TypeA")

See the Getting Started vignettes for complete walkthroughs with real spatial transcriptomics datasets, including within-cell-type analysis, cross-cell-type co-progression, and multi-slide experiments.

Citation

If you use CoPro in your research, please cite:

[Citation information will be added upon publication]

Getting Help