Skip to contents

Applies the CIBERSORT algorithm to deconvolute bulk proteome data into constituent cell types using a signature matrix. The function requires the original CIBERSORT.R script to be sourced.

Usage

deconvolute_cibersort(
  data,
  signature,
  QN = FALSE,
  absolute = FALSE,
  abs_method = "sig.score",
  ...
)

Arguments

data

A numeric matrix containing mixture data with genes as row names and samples as columns.

signature

A numeric matrix containing signature data with genes as row names and cell types as columns.

QN

Logical indicating whether quantile normalization is performed (default FALSE).

absolute

Logical indicating whether an absolute score is computed (default FALSE).

abs_method

Method for absolute scoring if absolute is TRUE (default "sig.score").

...

Additional arguments passed to the CIBERSORT function.

Value

A numeric matrix with samples as rows and cell types as columns, representing the estimated proportion of each cell type in each sample. The returned matrix excludes CIBERSORT's diagnostic columns (RMSE, P-value, Correlation).

Details

This function requires the original CIBERSORT.R script from the CIBERSORT website (https://cibersortx.stanford.edu/) to be sourced before use. It writes temporary files for the mixture data and signature matrix, calls the CIBERSORT function, and processes the results.

See also

deconvolute for a unified interface to multiple deconvolution methods.

Examples

if (FALSE) { # \dontrun{
# First source the CIBERSORT.R script
source("/path/to/CIBERSORT.R")

# Load example data and signature matrix
data_file <- system.file("extdata", "mixed_samples_matrix.rds", package = "proteoDeconv")
mixed_samples <- readRDS(data_file)

signature_file <- system.file("extdata", "cd8t_mono_signature_matrix.rds", package = "proteoDeconv")
signature_matrix <- readRDS(signature_file)

# Run deconvolution
result <- deconvolute_cibersort(
  data = mixed_samples,
  signature = signature_matrix,
  QN = FALSE,
  absolute = FALSE
)
} # }