1 Repaso: scRNA-seq vs bulk-RNA-seq
-
Bulk RNA-seq: mide expresión promedio en un tejido; útil para detectar cambios globales, pero oculta heterogeneidad celular.
- Insuficiente para: estudios de desarrollo temprano o tejidos complejos como el cerebro.
1.1 Single cell RNA-seq (scRNA-seq)
- Primera publicación en 2009 (Tang et al, 2009)
- Popularidad en 2014
- Estimar la distribución de los niveles de expresión de cada gen en una población celular.
- Análisis a nivel de célula individual
- Permite revelar tipos celulares (poblaciones raras)
- Analizar las dinámicas temporales y heterogeneidad.
1.2 Heterogeneidad: Diversidad interna de un sistema o de un conjunto
🔬 No todas las células son iguales: incluso dentro de un mismo tejido, existen diferencias en tipos celulares, estados funcionales y niveles de expresión génica.
🧬 Variabilidad genética y transcriptómica: cada célula puede expresar distintos genes o cantidades de RNA, reflejando funciones específicas.
🩺 Relevancia en enfermedad: la heterogeneidad celular explica por qué un tumor, por ejemplo, contiene subpoblaciones con distintos comportamientos (algunas más agresivas, otras más sensibles a tratamiento).
Visualización a través de UMAP (Uniform Manifold Approximation and Projection):
1.3 Preguntas que se pueden responde scRNA-seq
- Descubrir tipos celulares nuevos o raros.
- Identificar composición celular diferencial entre sano vs. enfermo.
- Comprender la diferenciación celular en desarrollo y regeneración.
- Analizar plasticidad y dinámicas de expresión en células individuales.
- Construir atlas celulares/genéticos → catálogo completo de diversidad celular.
- Aplicaciones en investigación básica y medicina personalizada.

1.4 General Pipeline for scRNA‑seq with Seurat
| Step | Purpose | Seurat Command |
|---|---|---|
|
Load raw count matrix and create Seurat object |
Read10X(), CreateSeuratObject()
|
|
Filter cells/genes based on metrics (e.g., nFeature_RNA, percent.mt) |
subset(), PercentageFeatureSet()
|
|
Adjust counts for sequencing depth |
NormalizeData() or SCTransform()
|
|
Identify variable genes | FindVariableFeatures() |
|
Reduce dimensions for visualization |
ScaleData(), RunPCA(), RunUMAP(), RunTSNE()
|
|
Group cells and assign biological meaning |
FindNeighbors(), FindClusters(), FindAllMarkers()
|
|
Combine multiple datasets, remove batch effects |
FindIntegrationAnchors(), IntegrateData()
|
|
Specific goals: DEGs, trajectories, cell communication |
FindMarkers(), CellCycleScoring(), external packages |
1.5 Variations of scRNA‑seq
| Type of Analysis | Contribution |
|---|---|
| Unimodal (RNA only) | Cellular heterogeneity in gene expression |
| Multimodal (RNA + others, e.g., CITE‑seq) | Regulation, proteomics, and biological context |
| Trajectories | Temporal dynamics of biological processes |
| Cellular Interactions | Communication and functional networks |
| Dataset Integration | Comparison across conditions |
1.6 What is CITE-Seq?
CITE‑seq (Cellular Indexing of Transcriptomes and Epitopes by Sequencing) is a multimodal single‑cell technique that combines RNA sequencing with protein profiling at the level of individual cells.
1.6.1 📌 Key points about CITE‑seq
- Simultaneous measurements → captures both the transcriptome (scRNA‑seq) and surface proteins using antibody‑derived tags (ADTs).
- Highly multiplexed → allows detection of many protein markers in parallel, alongside unbiased RNA profiling.
- Single‑cell resolution → thousands of cells can be analyzed at once, integrating RNA and protein data.
- Multimodal context → CITE‑seq is part of the broader multimodal analysis frontier in single‑cell genomics, where multiple data types (RNA, ATAC, methylation, perturbations) are measured in the same cell.
- Applications → improves cell type identification, refines clustering, and reveals functional states that RNA alone might miss.

1.7 Overview

1.8 General Pipeline for CITE‑seq
| Step | Purpose | Seurat Command |
|---|---|---|
|
Load RNA counts and antibody‑derived tags (ADT) |
Read10X(), CreateSeuratObject()
|
|
Filter cells/genes based on RNA metrics and ADT counts |
PercentageFeatureSet(), subset()
|
|
Adjust RNA counts for sequencing depth |
SCTransform() or NormalizeData()
|
|
Center and scale protein counts |
NormalizeData(assay = "ADT"), ScaleData(assay = "ADT")
|
|
Identify variable genes | FindVariableFeatures() |
|
Reduce dimensions for RNA and ADT separately |
RunPCA(assay = "RNA"), RunPCA(assay = "ADT")
|
|
Combine RNA + ADT signals |
FindMultiModalNeighbors(), RunUMAP(nn.name = "weighted.nn")
|
|
Group cells and assign biological meaning |
FindClusters(), FindAllMarkers()
|
|
Discover enriched proteins per cluster, refine cell types |
FindMarkers(assay = "ADT"), external multimodal workflows |
1.9 scRNA-seq vs scRNA-seq + CITE‑seq
| Approach | Type | Purpose |
|---|---|---|
| scRNA‑seq | Unimodal (RNA only) | Characterize transcriptomic heterogeneity: identify cell types, states, and gene expression dynamics based solely on RNA. |
| CITE‑seq | Multimodal (RNA + proteins) | Integrate RNA + surface proteins: refine cell type annotation, validate clusters, and capture functional context beyond transcriptomics. |
1.10 Referencias
- Cite-seq-Count
- CITE-Seq tutorial
- End-to-end CITE-seq analysis workflow using dsb for ADT normalization and Seurat for multimodal clustering
- Using Seurat with multimodal data
- Simultaneous epitope and transcriptome measurement in single cells
- Introducción a scRNA-seq y control de calidad
- Workshop de scRNA-seq


