ClusterMarkers¶
Markers for clusters of all or selected T cells.
This process is extended from MarkersFinder
from the biopipen
package.
MarkersFinder
is a pipen
process that wraps the
Seurat::FindMarkers()
function, and performs enrichment analysis for the markers found.
The enrichment analysis is done by enrichr
.
Note
Since this process is extended from MarkersFinder
, other environment variables from MarkersFinder
are also available.
However, they should not be used in this process. Other environment variables are used for more complicated cases for marker finding
(See MarkersFinder
for more details).
If you are using pipen-board
to run the pipeline
(see here and
here),
you may see the other environment variables of this process are hidden and readonly.
Environment Variables¶
ncores
(type=int
): Default:1
.
Number of cores to use for parallel computing for someSeurat
procedures.- Used in
future::plan(strategy = "multicore", workers = <ncores>)
to parallelize some Seurat procedures. - See also: https://satijalab.org/seurat/articles/future_vignette.html
- Used in
prefix_group
(flag
): Default:True
.
When neitherident-1
norident-2
is specified, should we prefix the group name to the section name?dbs
(list
): Default:['KEGG_2021_Human', 'MSigDB_Hallmark_2020']
.
The dbs to do enrichment analysis for significant markers See below for all libraries.
https://maayanlab.cloud/Enrichr/#librariessigmarkers
: Default:p_val_adj < 0.05 & avg_log2FC > 0
.
An expression passed todplyr::filter()
to filter the significant markers for enrichment analysis.
Available variables arep_val
,avg_log2FC
,pct.1
,pct.2
andp_val_adj
. For example,"p_val_adj < 0.05 & abs(avg_log2FC) > 1"
to select markers with adjusted p-value < 0.05 and absolute log2 fold change > 1.assay
: The assay to use.volcano_genes
(type=auto
): Default:True
.
The genes to label in the volcano plot if they are significant markers.
IfTrue
, all significant markers will be labeled. IfFalse
, no genes will be labeled. Otherwise, specify the genes to label.
It could be either a string with comma separated genes, or a list of genes.subset
: An expression to subset the cells for each case.rest
(ns
): Rest arguments forSeurat::FindMarkers()
.
Use-
to replace.
in the argument name. For example, usemin-pct
instead ofmin.pct
.
This only works whenuse_presto
isFalse
.
dotplot
(ns
): Arguments forSeurat::DotPlot()
.
Use-
to replace.
in the argument name. For example, usegroup-bar
instead ofgroup.bar
.
Note thatobject
,features
, andgroup-by
are already specified by this process. So you don't need to specify them here.maxgenes
(type=int
): Default:20
.
The maximum number of genes to plot.devpars
(ns
): The device parameters for the plots.res
(type=int
): The resolution of the plots.height
(type=int
): The height of the plots.width
(type=int
): The width of the plots.
<more>
: See https://satijalab.org/seurat/reference/doheatmap
overlap_defaults
(ns
): The default options for overlapping analysis.venn
(ns
): The options for the Venn diagram.
Venn diagram can only be plotted for sections with no more than 4 cases.devpars
(ns
): The device parameters for the plots.res
(type=int
): Default:100
.
The resolution of the plots.height
(type=int
): Default:600
.
The height of the plots.width
(type=int
): Default:1000
.
The width of the plots.
upset
(ns
): The options for the UpSet plot.devpars
(ns
): The device parameters for the plots.res
(type=int
): Default:100
.
The resolution of the plots.height
(type=int
): Default:600
.
The height of the plots.width
(type=int
): Default:800
.
The width of the plots.
overlap
(json
): Default:{}
.
The sections to do overlaping analysis, including Venn diagram and UpSet plot. The Venn diagram and UpSet plot will be plotted for the overlapping of significant markers between different cases.
The keys of this option are the names of the sections. The values are a dict of options with keysvenn
andupset
, values will be inherited fromenvs.overlap_defaults
, recursively.
You can setenvs.overlap.<section>.venn
toFalse
/None
to disable the Venn diagram for the section.
It works wheneach
is specified. In such a case, the sections will be the case names.
This does not work for the cases whereident-1
is not specified. In case you want to do such analysis for those cases, you should enumerate the idents in different cases and specify them here.cache
(type=auto
): Default:/tmp
.
Where to cache toFindAllMarkers
results.
IfTrue
, cache tooutdir
of the job. IfFalse
, don't cache.
Otherwise, specify the directory to cache to.
Only works whenuse_presto
isFalse
(presto works fast enough).