Single Cell RNA-seq Analysis Workshop
  • About
  • Software Setup
  • Schedule
  • Materials
  • Datasets
  • Cheat Sheets
  • Additional Resources

Materials

Note

How to use this page. Each module links up to five layers — Lec (slide deck), Ch (long-form reading), Tut_view (rendered tutorial to read along), Tut_run (downloadable .qmd to run in RStudio / VS Code), and Script (the same workflow as a Talapas SLURM job). Recommended order: lecture → chapter → tutorial, then the script to scale it on the cluster. The During the workshop table runs P1–P2 (optional Tuesday refresher), 00–08 (laptop analysis, Wed–Thu), and 09–10 (Talapas HPC track, Friday). Module 09 covers connecting to Talapas with VS Code Remote-SSH and running interactive SLURM sessions; Module 10 runs the full analysis as a batch job. Quick references are on the Cheat Sheets tab; supporting material is under Additional Resources.

ImportantSet up your project folder before you start (do this once)

The laptop tutorials (Tut_run) are designed to run from a tidy project folder so that figures, tables, and the objects passed between tutorials all land in predictable places.

  1. Create a project folder anywhere (e.g. my_scrnaseq_project/) and make a scripts/ subfolder inside it.
  2. Download each Tut_run .qmd into scripts/. (The browser adds a trailing .txt — drop it so the name ends in .qmd.)
  3. Open and run each tutorial from scripts/. On first run, the code auto-creates two sibling folders at the project root:
    • data/ — the intermediate .rds objects each tutorial saves and the next one reads (the hand-off chain, Tutorials 01 → 08).
    • output/ModN/ — that module’s tables (.csv) and every figure written twice: a .png for quick viewing and a .svg (vector) you can open in Illustrator/Inkscape to edit for a manuscript. (The .svg output needs the svglite package, installed in Tutorial 00.)
my_scrnaseq_project/
├── scripts/     ← the .qmd files you download (run them from here)
├── data/        ← auto-created: intermediate .rds passed between steps
└── output/      ← auto-created: figures & tables, one Mod folder per module

In the code these are written as ../data and ../output/ModN (one level up from scripts/). Keep all the .qmd files together in scripts/ so every tutorial shares the same project data/. 📄 Download the project-setup README and drop it in your project folder for reference.

During the workshop

Module Topic Lec Ch Tut_view Tut_run Script
P1 Computer Systems & the Command Line — computers & operating systems, using VS Code locally, and the shell (navigation, paths, pipes) Lec P1 Ch P1 — — —
P2 R & RStudio — the R language, data structures, functions, the tidyverse, reading/writing data Lec P2 Ch P2 — — —
00 Overview, setup & tooling (R, RStudio, Quarto, VS Code on your laptop) Lec 00 Ch 00 Tut_view 00 Tut_run 00 —
01 QC & preprocessing Lec 01 Ch 01 Tut_view 01 Tut_run 01 Script 01
02 Dimensionality reduction & clustering Lec 02 Ch 02 Tut_view 02 Tut_run 02 Script 02
03 Markers & manual annotation Lec 03 Ch 03 Tut_view 03 Tut_run 03 Script 03
04 Reference-based annotation Lec 04 Ch 04 Tut_view 04 Tut_run 04 Script 04
05 Multi-sample integration Lec 05 Ch 05 Tut_view 05 Tut_run 05 Script 05
06 Pseudobulk differential expression Lec 06 Ch 06 Tut_view 06 Tut_run 06 Script 06
07 Functional enrichment analysis Lec 07 Ch 07 Tut_view 07 Tut_run 07 Script 07
08 Differential abundance Lec 08 Ch 08 Tut_view 08 Tut_run 08 Script 08
09 VS Code & SLURM Basics on Talapas — connecting with VS Code Remote-SSH, interactive sessions, SLURM job submission Lec 09 Ch 09 Tut_view 09 Tut_run 09 Script 09
10 Running the analysis pipeline on Talapas — batch-mode SLURM jobs for the full 01–08 R pipeline Lec 10 Ch 10 Tut_view 10 Tut_run 10 Script 10

Bonus modules (11–17, self-paced)

Self-paced material beyond the three in-person days. 11–12 are upstream (raw FASTQs → counts, run before the core); 13–17 are downstream (extended analyses, run after the core).

Module Topic Lec Ch Tut_view Tut_run Script
11 Cell Ranger: raw FASTQ → counts (RNA) Lec 11 Ch 11 Tut_view 11 Tut_run 11 Script 11
12 cellranger-atac: raw FASTQ → peaks (scATAC) Lec 12 Ch 12 Tut_view 12 Tut_run 12 Script 12
▶ Run the core analysis modules (00–10) here — process raw data in 11–12, then run the core pipeline on your counts before continuing with the downstream bonus modules below. See the During the workshop table.
13 Co-expression networks (WGCNA) Lec 13 Ch 13 Tut_view 13 Tut_run 13 Script 13
14 Trajectory & cell–cell communication Lec 14 Ch 14 Tut_view 14 Tut_run 14 Script 14: R · py
15 scATAC-seq analysis (Signac) Lec 15 Ch 15 Tut_view 15 Tut_run 15 Script 15
16 Spatial transcriptomics Lec 16 Ch 16 Tut_view 16 Tut_run 16 Script 16
17 FAIR data & sharing Lec 17 Ch 17 Tut_view 17 Tut_run 17 Script 17
Important

Two things to know.

  • Where each bonus module sits relative to the core pipeline. Modules 11–12 are upstream — they turn raw 10x FASTQs into the filtered_feature_bc_matrix/ (RNA) or peak matrix (scATAC) that the core Module 01 / Module 15 pick up. Most participants are handed a counts matrix by their sequencing core, so these are optional. Modules 13–17 are downstream — WGCNA, trajectory, scATAC analysis, spatial, and FAIR all build on a clustered/annotated object (or their own dataset) once the core sequence is done. The end-to-end version (raw reads → counts → full analysis) is the Full Talapas run from raw FASTQs roadmap.
  • Downloading a tutorial (Tut_run). The browser saves each .qmd with a trailing .txt (e.g. …qmd.txt). After saving, drop the trailing .txt so the name ends in .qmd, then open it in RStudio (or in VS Code on Talapas). (The .txt suffix stops the browser from rendering the source as a webpage.)

Talapas SLURM wrappers

The Script links above download each module’s analysis script. To run them on Talapas as batch jobs, the workshop ships six reusable sbatch wrappers (download, then sbatch <wrapper> … from the scripts/ folder after mkdir -p logs):

Wrapper What it does
run_rscript.sbatch Run one R step, e.g. sbatch run_rscript.sbatch 06_pseudobulk_de.R
run_python.sbatch Run one Python step, e.g. sbatch run_python.sbatch 14_rna_velocity_scvelo.py
run_core_pipeline.sbatch Run the core pipeline (Modules 01–08) end-to-end in one job
run_bonus_pipeline.sbatch Run the bonus downstream R analyses (Modules 13–17)
cellranger_RNA_count.sbatch Raw 10x RNA FASTQs → counts with cellranger count (Module 11)
cellranger_atac_count.sbatch Raw 10x scATAC FASTQs → peaks with cellranger-atac count (Module 12)

See Module 09 and Module 10 for how to submit and monitor SLURM jobs.

Datasets

The core modules use just two datasets: the single-cell ifnb PBMC data (Modules 01–08, and the Talapas pipeline in Module 10) and the bulk airway data (the DESeq2 primer in Module 06). Both load automatically from Bioconductor — no manual download. The bonus modules bring their own datasets; those are described on the Datasets page, which also has the expected directory layout and a disk-space budget.

ifnb — Kang et al. 2017 (core Modules 01–08, 10)

Human peripheral blood mononuclear cells (PBMCs), ~24k cells, 10x Chromium 3′ v1, loaded via muscData::Kang18_8vs8(). Eight lupus donors, each split into a control and an interferon-β–stimulated aliquot — so it has a real condition and real biological replicates, which is what makes integration, pseudobulk DE, and differential abundance meaningful.

Variable (cell metadata) What it is
stim Condition — CTRL or STIM (interferon-β, 6 h). The two samples we integrate.
ind (→ donor) Donor ID — one of 8 lupus patients; the biological replicate for DE / DA.
seurat_annotations Author-curated cell type (CD14/CD16 Mono, CD4/CD8 T, B, NK, DC, pDC, Mk…).
nCount_RNA Total UMIs (transcripts) detected in the cell.
nFeature_RNA Number of genes detected in the cell.
percent.mt Percent of reads from mitochondrial genes (added during QC; a stress/quality flag).

Reference: Kang et al. (2017) “Multiplexed droplet single-cell RNA-sequencing using natural genetic variation.” Nature Biotechnology 36: 89–94. doi:10.1038/nbt.4042 · GEO GSE96583.

airway — Himes et al. 2014 (core Module 06, DESeq2 primer)

A bulk RNA-seq dataset — the standard teaching set for DESeq2. Four primary human airway smooth-muscle cell lines, each profiled untreated and after treatment with the steroid dexamethasone, giving 8 samples (4 donors × 2 conditions, a paired design). Module 06 uses it to learn the negative-binomial GLM, size factors, dispersion shrinkage, and contrasts on clean bulk data before applying the same model to single-cell pseudobulk. Ships as a Bioconductor package — BiocManager::install("airway"); data(airway) — so there is nothing to download.

Variable (sample metadata) What it is
dex Treatment — untrt or trt (dexamethasone). The contrast of interest.
cell Cell-line donor ID (one of four); the blocking factor in the paired design.
SampleName / Run Sample and SRA run identifiers.

Reference: Himes et al. (2014) “RNA-Seq transcriptome profiling identifies CRISPLD2 as a glucocorticoid responsive gene that modulates cytokine function in airway smooth muscle cells.” PLoS ONE 9: e99625. doi:10.1371/journal.pone.0099625.

Bonus Module Datasets

The bonus modules (11–17) use their own datasets — 10x raw FASTQs (Cell Ranger), the GSE152418 COVID-19 bulk data (WGCNA), 10x PBMC scATAC, and the stxBrain Visium sections (spatial). Each is described, with its single load/download method and disk budget, on the Datasets page →

Back to top

© Single Cell RNA-seq Workshop

Center for Biomedical Data Science (CBDS)

Built with Quarto