Evaluate specificity of single-cell markers across several cluster resolutions using co-dependency index-based specificity measure. Consider running multiCluster(...) first.

multiSpecificity(
  object,
  cluster_names,
  features = NULL,
  deg_prefilter = T,
  geosketch.subset = F,
  cdi_bins = seq(0, 1, by = 0.01),
  min.pct = 0.1,
  n.workers = 1,
  return_dotplot = T,
  verbose = T
)

Arguments

object

Seurat object with multi-resolution clusters provided in meta data.

cluster_names

Vector specifying names of all cluster configurations found in meta data.

features

If specified, marker specificity analysis is limited to specified features. Otherwise all features are used (more computationally intensive).

deg_prefilter

If TRUE, wilcoxon analysis is performed first to subset DEG features for downstream analysis. Results in faster performance. Default is TRUE.

geosketch.subset

Use GeoSketch method to subsample scRNA-seq data while preserving rare cell states (https://doi.org/10.1016/j.cels.2019.05.003). Logical, T or F (Default F). Recommended if cell type representation is imbalanced.

cdi_bins

Vector specifying binning for CDI-based specificity curve. Must range [0,1]. Default is seq(0, 1, by = 0.01).

min.pct

Minimal expression of features that are considered in specificity analysis. Represents fraction of expression cells and must range [0,1]. Higher values result in faster performance. Default is 0.1.

n.workers

Number of workers used for parallel implementation. Default is 1.

return_dotplot

If TRUE, dot plots visualizing expression of top specific markers are returned. Default is T.

verbose

Print progress. Default is TRUE.

Value

Seurat object

See also

Author

Nicholas Mikolajewicz

Examples

# clustering data
ms.list <- multiSpecificity(object = so.query, cluster_names = cluster.name, features = NULL, deg_prefilter = T,
cdi_bins = seq(0, 1, by = 0.01), min.pct = 0.1,
n.workers = 4, return_dotplot = T,  verbose = T)
#> Error in "Seurat" %in% class(object): object 'so.query' not found
df.auc.spec <- ms.list$specificity_summary
#> Error in eval(expr, envir, enclos): object 'ms.list' not found
qm.res.sum.sum.all <- ms.list$specificity_raw
#> Error in eval(expr, envir, enclos): object 'ms.list' not found
plt.clust.spec <- ms.list$auc_plot
#> Error in eval(expr, envir, enclos): object 'ms.list' not found
plt.auc.spec <- ms.list$resolution_plot
#> Error in eval(expr, envir, enclos): object 'ms.list' not found
plt.auc.dot <- ms.list$dot_plot
#> Error in eval(expr, envir, enclos): object 'ms.list' not found