Skip to contents

Decomposes gene expression variance into biological cell-type heterogeneity, donor / biological replicate variation, and residual technical noise.

Usage

calc_variance_decomposition(
  counts,
  cell_metadata,
  donor_col = "donor",
  celltype_col = "cell_type",
  n_genes = 200
)

Arguments

counts

Matrix or data.frame (genes x cells) or SingleCellExperiment.

cell_metadata

Data.frame containing donor and cell-type columns.

donor_col

Character, column name for donor/replicate (default "donor").

celltype_col

Character, column name for cell identity (default "cell_type").

n_genes

Number of top variable genes to analyze (default 200).

Value

A list of mean percentage of variance explained by cell-type, donor, and residual noise.

Examples

data(example_scrna, package = "scSimEval")
md <- data.frame(donor = example_scrna$batch_info,
                 cell_type = example_scrna$cell_types)
calc_variance_decomposition(example_scrna$ref, md)
#> $mean_var_celltype
#> [1] 0.01345408
#> 
#> $mean_var_donor
#> [1] 0.0104603
#> 
#> $mean_var_residual
#> [1] 0.9760856
#> 
#> $gene_var_celltype
#>  [1] 2.520562e-03 1.916488e-03 5.515067e-03 4.397444e-02 4.614194e-03
#>  [6] 2.064384e-02 5.217775e-02 2.468090e-02 3.999708e-02 4.013292e-03
#> [11] 1.251698e-02 3.131192e-02 5.534946e-02 2.750110e-02 9.143959e-03
#> [16] 2.230367e-03 3.949667e-02 2.857817e-04 4.415389e-02 6.978446e-03
#> [21] 3.037187e-03 9.145079e-04 4.606363e-03 2.866364e-03 3.029943e-02
#> [26] 1.910366e-04 1.340550e-02 1.795826e-02 2.778538e-04 2.338363e-04
#> [31] 5.707306e-03 1.093228e-03 1.227430e-03 3.839481e-04 2.916844e-03
#> [36] 3.382110e-02 5.079335e-03 3.233372e-06 5.425177e-03 5.424189e-02
#> [41] 5.516085e-05 4.930564e-02 5.212262e-03 1.100761e-03 1.696935e-03
#> [46] 3.687519e-02 3.700750e-03 7.095977e-03 4.537002e-06 1.365523e-02
#> [51] 1.232206e-03 2.490128e-03 4.391117e-03 2.512450e-02 1.452628e-02
#> [56] 2.753790e-03 1.419256e-02 1.726690e-04 2.091543e-03 8.855398e-03
#> 
#> $gene_var_donor
#>  [1] 4.792886e-04 8.089796e-07 1.459148e-03 1.917961e-02 1.709849e-05
#>  [6] 2.129522e-03 1.483262e-02 5.006861e-03 3.453810e-04 3.057970e-03
#> [11] 4.301969e-03 6.613235e-05 4.269526e-03 6.138026e-03 2.167841e-03
#> [16] 3.458139e-03 8.297876e-03 2.247187e-03 2.155618e-02 6.307634e-05
#> [21] 1.773497e-03 6.155600e-03 2.584194e-04 6.043605e-04 1.533203e-02
#> [26] 9.335053e-03 2.199871e-03 5.899487e-03 3.595082e-02 5.624121e-03
#> [31] 2.951465e-03 4.853133e-03 5.828235e-03 1.318694e-02 2.633780e-02
#> [36] 3.954799e-02 5.243041e-03 2.736086e-02 6.961369e-03 3.243552e-02
#> [41] 9.726092e-05 3.564597e-03 3.679968e-03 2.255479e-02 5.329690e-02
#> [46] 4.513680e-04 1.670687e-03 4.681735e-02 5.675179e-04 2.584465e-02
#> [51] 1.703924e-02 1.192648e-03 5.359078e-03 1.728120e-03 3.379797e-04
#> [56] 3.009181e-05 7.008467e-02 1.563320e-05 1.834895e-03 2.453684e-02
#> 
#> $gene_var_residual
#>  [1] 0.9970001 0.9980827 0.9930258 0.9368460 0.9953687 0.9772266 0.9329896
#>  [8] 0.9703122 0.9596575 0.9929287 0.9831810 0.9686219 0.9403810 0.9663609
#> [15] 0.9886882 0.9943115 0.9522055 0.9974670 0.9342899 0.9929585 0.9951893
#> [22] 0.9929299 0.9951352 0.9965293 0.9543685 0.9904739 0.9843946 0.9761423
#> [29] 0.9637713 0.9941420 0.9913412 0.9940536 0.9929443 0.9864291 0.9707454
#> [36] 0.9266309 0.9896776 0.9726359 0.9876135 0.9133226 0.9998476 0.9471298
#> [43] 0.9911078 0.9763445 0.9450062 0.9626734 0.9946286 0.9460867 0.9994279
#> [50] 0.9605001 0.9817286 0.9963172 0.9902498 0.9731474 0.9851357 0.9972161
#> [57] 0.9157228 0.9998117 0.9960736 0.9666078
#>