Function to calculate perturbation signature for pooled CRISPR screen datasets. For each target cell (expressing one target gRNA), we identified 20 cells from the control pool (non-targeting cells) with the most similar mRNA expression profiles. The perturbation signature is calculated by subtracting the averaged mRNA expression profile of the non-targeting neighbors from the mRNA expression profile of the target cell.

CalcPerturbSig(
  object,
  assay = NULL,
  features = NULL,
  slot = "data",
  gd.class = "guide_ID",
  nt.cell.class = "NT",
  split.by = NULL,
  num.neighbors = NULL,
  reduction = "pca",
  ndims = 15,
  new.assay.name = "PRTB",
  verbose = TRUE
)

Arguments

object

An object of class Seurat.

assay

Name of Assay PRTB signature is being calculated on.

features

Features to compute PRTB signature for. Defaults to the variable features set in the assay specified.

slot

Data slot to use for PRTB signature calculation.

gd.class

Metadata column containing target gene classification.

nt.cell.class

Non-targeting gRNA cell classification identity.

split.by

Provide metadata column if multiple biological replicates exist to calculate PRTB signature for every replicate separately.

num.neighbors

Number of nearest neighbors to consider.

reduction

Reduction method used to calculate nearest neighbors.

ndims

Number of dimensions to use from dimensionality reduction method.

new.assay.name

Name for the new assay.

verbose

Display progress + messages

Value

Returns a Seurat object with a new assay added containing the perturbation signature for all cells in the data slot.