本文へ移動
cccskills
無料GitHub で公開

bioconductor-cytomem

MEM, Marker Enrichment Modeling, automatically generates and displays quantitative labels for cell populations that have been identified from single-cell data. The input for MEM is a dataset that has pre-clustered or pre-gated populations with cells in rows and features in columns. Labels convey a list of measured features and the features' levels of relative enrichment on each population. MEM can be applied to a wide variety of data types and can compare between MEM labels from flow cytometry,

インストール方法を見る

含まれるファイル(1)

  • SKILL.md6.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

cytoMEM

Workflows

Standard Workflow

Perform Marker Enrichment Modeling (MEM) analysis on single-cell data to generate quantitative population labels, visualize them via heatmaps, and calculate similarity scores between populations.

library(cytoMEM)
data(PBMC)

# Run MEM analysis on the PBMC dataset
MEM_values <- MEM(
  PBMC,
  transform = TRUE,
  cofactor = 15,
  choose.markers = FALSE,
  markers = "all",
  choose.ref = FALSE,
  zero.ref = FALSE,
  rename.markers = FALSE,
  new.marker.names = "none",
  IQR.thresh = NULL
)

# Generate population labels and heatmaps
build_heatmaps(
  MEM_values,
  cluster.MEM = "both",
  cluster.medians = "none",
  cluster.IQRs = "none",
  display.thresh = 1,
  output.files = FALSE,
  labels = FALSE,
  only.MEMheatmap = FALSE
)

# Calculate similarity (RMSD) scores between populations
MEM_RMSD(
  MEM_values[[5]][[1]],
  format = NULL,
  output.matrix = FALSE
)

Input/Output Note: Inputs a matrix or data frame of single-cell expression data with a cluster ID column; outputs MEM scores, enrichment labels, heatmaps, and population similarity matrices.

When to Use

  • To automatically generate quantitative, human-readable enrichment labels for pre-clustered or pre-gated cell populations from single-cell data (e.g., mass cytometry or flow cytometry) using MEM().
  • To visualize marker enrichment and population medians across clusters using build_heatmaps().
  • To compare the similarity of MEM labels across different populations or datasets using root-mean-square deviation (RMSD) via MEM_RMSD().

When NOT to Use

  • For clustering raw single-cell data from scratch; use packages like Seurat or scran because cytoMEM requires pre-clustered or pre-gated populations.
  • For differential expression analysis of single-cell RNA-seq data; use edgeR or DESeq2 because cytoMEM is designed to generate descriptive enrichment labels rather than statistical hypothesis testing.
  • For raw flow cytometry compensation or gating; use flowCore because cytoMEM expects pre-processed, gated, or clustered expression matrices.

Data Requirements

  • Input format: Matrix, data frame, or file paths (.txt, .csv, .fcs).
  • Structure: Cells in rows, markers/features in columns. The last column must be the cluster ID (unless file.is.clust = TRUE).
  • Normalization/Transformation: Optionally transformed using hyperbolic arcsine (transform = TRUE with a specified cofactor, e.g., cofactor = 15 for mass cytometry).

Key Parameters

  • transform (FALSE): Logical indicating whether to apply a hyperbolic arcsine transformation to the data.
  • cofactor (15): The cofactor used in the hyperbolic arcsine transformation.
  • choose.markers (FALSE): Logical indicating whether to select markers interactively via the console.
  • markers ("all"): Character string specifying which markers to include in the analysis.
  • choose.ref (FALSE): Logical indicating whether to choose an alternative reference population.
  • zero.ref (FALSE): Logical indicating whether to use a zero (synthetic negative) reference.
  • IQR.thresh (NULL): Threshold for interquartile range to avoid artificial inflation of MEM values (defaults internally to 0.5).
  • display.thresh (0): Numeric value (0-10) specifying the minimum MEM score required for a marker to be displayed.

Best Practices

  • Apply channel-specific transformations prior to running MEM() and set transform = FALSE if different cofactors are required for different fluorescence channels.
  • Keep the default IQR.thresh of 0.5 unless you have a deep understanding of the dataset and the implications of changing it.
  • Set labels = TRUE in build_heatmaps() to display the full MEM labels directly on the generated heatmap.
  • Save the heatmap as a PDF file (output.files = TRUE) to prevent row names (MEM labels) from being cut off due to R window dimensions.

Common Pitfalls

  • Row names cut off in heatmaps: Occurs due to R window dimensions. Fix: Set output.files = TRUE to save the heatmap as a PDF and open it in a PDF viewer, or read the full labels from the generated enrichment score-rownames.txt file.
  • Artificial inflation of MEM values: Occurs when a population has a very small IQR due to background-level expression. Fix: Ensure IQR.thresh is set to at least 0.5 (the default) to threshold low IQR values.
  • Mismatched columns across multiple files: Occurs when reading multiple files with different formats. Fix: Ensure all files have identical columns (features) and are of the same file type.

Alternatives

  • Seurat: For comprehensive single-cell RNA-seq clustering and marker identification using differential expression.
  • scater: For single-cell quality control and visualization of expression patterns.
  • scran: For formal statistical testing of marker genes using differential expression.
  • flowCore: For low-level flow cytometry data import, compensation, and transformation.

Citations

  • Diggins, K. et al. (2017), Nature Methods.

References

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

The package contains functions for exploratory oligonucleotide array analysis. The dependence on tkWidgets only concerns few convenience functions. 'affy' is fully functional without it.

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

This tool uses the label-tree function from HyPhy to annotate a phylogenetic tree. It allows users to select a subset of leaves using either a regular expression or a list of sequence names, and then apply a specified label to these selecte

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

This package provides a client for the Bioconductor AnnotationHub web resource. The AnnotationHub web resource provides a central location where genomic files (e.g., VCF, bed, wig) and other resources from standard locations (e.g., UCSC, En

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

apeglm provides Bayesian shrinkage estimators for effect sizes for a variety of GLM models, using approximation of the posterior for individual coefficients.

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

ASURAT is a software for single-cell data analysis. Using ASURAT, one can simultaneously perform unsupervised clustering and biological interpretation in terms of cell type, disease, biological process, and signaling pathway activity. Inputting a single-cell RNA-seq data and knowledge-based databases, such as Cell Ontology, Gene Ontology, KEGG, etc., ASURAT transforms gene expression tables into original multivariate tables, termed sign-by-sample matrices (SSMs).

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

AUCell allows to identify cells with active gene sets (e.g. signatures, gene modules...) in single-cell RNA-seq data. AUCell uses the "Area Under the Curve" (AUC) to calculate whether a critical subset of the input gene set is enriched with

日本語の概要は準備中です。原文の説明を表示しています。

bioMate-AI/biomate-bioconductor-kb8042026年6月21日 更新

bioMate-AI のスキルをすべて見る

このスキルの問題を報告する