| name | clustermarkersofallcells |
| description | Finds marker genes for clusters of ALL cells before T/B cell selection. This process identifies differentially expressed genes across unsupervised clusters to help identify broad cell types (T cells, B cells, Myeloid cells, NK cells, etc.) in mixed immune cell populations. |
ClusterMarkersOfAllCells Process Configuration
Purpose
Finds marker genes for clusters of ALL cells before T/B cell selection. This process identifies differentially expressed genes across unsupervised clusters to help identify broad cell types (T cells, B cells, Myeloid cells, NK cells, etc.) in mixed immune cell populations.
When to Use
- After
SeuratClusteringOfAllCells: Runs on all cells before T/B selection
- Before
TOrBCellSelection: Provides markers to identify which clusters are T/B cells
- Broad cell type identification: Distinguish major immune cell types from mixed populations
- Mixed cell populations: When your data contains T, B, Myeloid, NK, and other cell types
- Initial cell typing: First-pass identification before detailed annotation
- Data quality check: Verify expected cell types are present in your data
Configuration Structure
Process Enablement
[ClusterMarkersOfAllCells]
cache = true
Input Specification
[ClusterMarkersOfAllCells.in]
srtobj = ["SeuratClusteringOfAllCells"]
Environment Variables
All parameters are inherited from ClusterMarkers and MarkersFinder:
[ClusterMarkersOfAllCells.envs]
ncores = 1
group_by = null
test.use = "wilcox"
min.pct = 0.1
logfc.threshold = 0.25
sigmarkers = "p_val_adj < 0.05 & avg_log2FC > 0"
dbs = ["KEGG_2021_Human", "MSigDB_Hallmark_2020"]
enrich_style = "enrichr"
error = false
marker_plots_defaults = {"order_by": "desc(avg_log2FC)"}
allmarker_plots = {"Top 10 markers of all clusters": {"plot_type": "heatmap"}}
External References
Seurat FindMarkers Parameters
- Full reference: https://satijalab.org/seurat/reference/findmarkers
- Statistical tests:
test.use parameter
"wilcox": Wilcoxon Rank Sum test (default, recommended)
"roc": Receiver Operating Characteristic
"t": Student's t-test
"negbinom": Negative binomial (requires DESeq2)
"poisson": Poisson test
- Common arguments (use
- instead of . in TOML):
min-pct: Minimum detection percentage in either group
logfc-threshold: Minimum log2 fold change threshold
only-pos: Only return positive markers
min-diff-pct: Minimum difference in detection percentage
Enrichment Databases
Configuration Examples
Minimal Configuration
[SeuratClusteringOfAllCells]
[ClusterMarkersOfAllCells]
[ClusterMarkersOfAllCells.in]
srtobj = ["SeuratClusteringOfAllCells"]
Standard Marker Finding
[SeuratClusteringOfAllCells]
[ClusterMarkersOfAllCells]
[ClusterMarkersOfAllCells.in]
srtobj = ["SeuratClusteringOfAllCells"]
[ClusterMarkersOfAllCells.envs]
dbs = ["MSigDB_Hallmark_2020", "KEGG_2021_Human"]
sigmarkers = "p_val_adj < 0.05 & avg_log2FC > 0.25"
[ClusterMarkersOfAllCells.envs.marker_plots."Volcano Plot (log2FC)"]
plot_type = "volcano_log2fc"
[ClusterMarkersOfAllCells.envs.allmarker_plots."Top 10 markers of all clusters"]
plot_type = "heatmap"
[ClusterMarkersOfAllCells.envs.enrich_plots."Bar Plot"]
plot_type = "bar"
top_term = 10
Common Patterns
Pattern 1: Broad Cell Type Markers
[ClusterMarkersOfAllCells.envs]
min-pct = 0.1
logfc-threshold = 0.25
test.use = "wilcox"
sigmarkers = "p_val_adj < 0.05 & avg_log2FC > 0"
[ClusterMarkersOfAllCells.envs.allmarker_plots."Top 20 markers per cluster"]
plot_type = "heatmap"
Pattern 2: Quick Wilcoxon for Large Datasets
[ClusterMarkersOfAllCells.envs]
ncores = 8
test.use = "wilcox"
min-pct = 0.15
logfc-threshold = 0.3
sigmarkers = "p_val_adj < 0.01 & avg_log2FC > 0.5"
dbs = []
[ClusterMarkersOfAllCells.envs.allmarker_plots."Top markers heatmap"]
plot_type = "heatmap"
Pattern 3: Identify T/B Cell Clusters
[ClusterMarkersOfAllCells.envs]
sigmarkers = "p_val_adj < 0.05 & avg_log2FC > 1"
[ClusterMarkersOfAllCells.envs.allmarker_plots."All markers heatmap"]
plot_type = "heatmap"
Difference from ClusterMarkers
| Aspect | ClusterMarkersOfAllCells | ClusterMarkers |
|---|
| Timing | BEFORE TOrBCellSelection | AFTER TOrBCellSelection |
| Data Scope | ALL cells (mixed population) | SELECTED T/B cells only |
| Purpose | Identify broad cell types | Fine-grained sub-clusters |
| Typical markers | CD3, CD19, CD14, NK markers | Activation, differentiation markers |
| Use case | "Which clusters are T/B/Myeloid?" | "What subtypes exist within T cells?" |
| Upstream | SeuratClusteringOfAllCells | SeuratClustering (post-selection) |
| Downstream | TOrBCellSelection | Cell type annotation, downstream analysis |
Key insight: Use ClusterMarkersOfAllCells when you need to separate T/B cells from other cell types. Use ClusterMarkers when you want to analyze sub-clusters within already-purified T or B cell populations.
Dependencies
Upstream Processes
SeuratClusteringOfAllCells: Required - provides clustered object with seurat_clusters metadata
SeuratPreparing: Indirect - provides normalized Seurat object
SampleInfo or LoadingRNAFromSeurat: Entry point for data
Downstream Processes
TOrBCellSelection: Primary consumer - uses marker results to select T/B cells
TopExpressingGenesOfAllCells: Optional complementary analysis
Validation Rules
Required Inputs
[ClusterMarkersOfAllCells.in]
srtobj = ["SeuratClusteringOfAllCells"]
Process Enablement
- Process automatically enabled when
SeuratClusteringOfAllCells is in config
- No need to explicitly set
[ClusterMarkersOfAllCells] if SeuratClusteringOfAllCells is enabled
Parameter Constraints
test.use: Must be one of "wilcox", "roc", "t", "negbinom", "poisson"
min-pct: Should be between 0 and 1 (e.g., 0.1 = 10%)
logfc-threshold: Numeric value (log2 scale)
sigmarkers: Valid dplyr filter expression
Common Errors
- Missing clustering: Ensure
SeuratClusteringOfAllCells runs first
- No markers found: Adjust
sigmarkers or logfc-threshold if too stringent
- Memory issues: Reduce
ncores or subset data with large datasets
Troubleshooting
Issue: No significant markers found
Symptoms: Empty output directory or warning about no markers
Solutions:
[ClusterMarkersOfAllCells.envs]
logfc-threshold = 0.1
min-pct = 0.05
sigmarkers = "p_val_adj < 0.1"
Issue: Too many markers (slow enrichment)
Symptoms: Process takes very long, memory issues
Solutions:
[ClusterMarkersOfAllCells.envs]
logfc-threshold = 0.5
min-pct = 0.2
sigmarkers = "p_val_adj < 0.01 & avg_log2FC > 1"
dbs = ["MSigDB_Hallmark_2020"]
dbs = []
Issue: Can't identify T/B cell clusters
Symptoms: Markers don't show clear T/B cell signatures
Solutions:
-
Check marker gene presence:
[SeuratClusterStats.envs.features_defaults]
features = ["CD3D", "CD3E", "CD19", "MS4A1", "CD14", "LYZ"]
-
Adjust clustering parameters:
[SeuratClusteringOfAllCells.envs]
res = 0.5
-
Check data quality:
- Are genes properly normalized?
- Are there enough cells per cluster?
- Is species correct (human vs mouse gene symbols)?
Issue: Process not running
Symptoms: Process skipped in workflow
Solutions:
- Verify
SeuratClusteringOfAllCells is in config
- Check dependencies are running correctly
- Ensure TCR data requires T/B selection (not all T cells already)
Typical Marker Genes for Identification
| Cell Type | Positive Markers | Negative Markers |
|---|
| T cells | CD3D, CD3E, CD3G, CD4, CD8A | CD19, MS4A1, CD14 |
| B cells | CD19, MS4A1 (CD20), CD79A, CD79B | CD3E, CD3D, CD14 |
| Monocytes | CD14, LYZ, FCGR3A, S100A8 | CD3E, CD19 |
| NK cells | NCAM1 (CD56), KLRD1 (CD94), NKG7 | CD3E, CD19, CD14 |
| Dendritic cells | FCER1A, CST3 | CD3E, CD19, CD14 |
| Megakaryocytes | PPBP, PF4 | CD3E, CD19, CD14 |
Use these marker lists to identify which clusters correspond to which cell types in your allmarker_plots heatmaps.