pegasus.de_analysis¶
- pegasus.de_analysis(data, cluster, condition=None, subset=None, de_key='de_res', n_jobs=- 1, t=False, fisher=False, temp_folder=None, verbose=True)[source]¶
Perform Differential Expression (DE) Analysis on data.
The analysis considers one cluster at one time, comparing gene expression levels on cells within the cluster with all the others using a number of statistical tools, and determining up-regulated genes and down-regulated genes of the cluster.
Mann-Whitney U test and AUROC are calculated by default. Welch’s T test and Fisher’s Exact test are optionally.
The scalability performance on calculating all the test statistics is improved by the inspiration from Presto.
- Parameters
data (
MultimodalData
,UnimodalData
, oranndata.AnnData
) – Data matrix with rows for cells and columns for genes.cluster (
str
) – Cluster labels used in DE analysis. Must exist indata.obs
.condition (
str
, optional, default:None
) – Sample attribute used as condition in DE analysis. IfNone
, no condition is considered; otherwise, must exist indata.obs
. Ifcondition
is used, the DE analysis will be performed on cells of each level ofdata.obs[condition]
respectively, and collect the results after finishing.subset (
List[str]
, optional, default:None
) – Perform DE analysis on only a subset of cluster IDs. Cluster ID subset is specified as a list of strings, such as[clust_1,clust_3,clust_5]
, where all IDs must exist indata.obs[cluster]
.de_key (
str
, optional, default:"de_res"
) – Key name of DE analysis results stored.n_jobs (
int
, optional, default:-1
) – Number of threads to use. If-1
, use all available threads.t (
bool
, optional, default:True
) – IfTrue
, calculate Welch’s t test.fisher (
bool
, optional, default:False
) – IfTrue
, calculate Fisher’s exact test.temp_folder (
str
, optional, default:None
) – Joblib temporary folder for memmapping numpy arrays.verbose (
bool
, optional, default:True
) – IfTrue
, show detailed intermediate output.
- Return type
None
- Returns
None
Update
data.varm
–data.varm[de_key]
: DE analysis result.
Examples
>>> pg.de_analysis(data, cluster='spectral_leiden_labels') >>> pg.de_analysis(data, cluster='louvain_labels', condition='anno')