Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cerevisiae_scRNAseq

Single-cell RNA-sequencing analysis of Saccharomyces cerevisiae in response to rapamycin treatment.

Overview

This repository contains the full analysis pipeline for a single-cell RNA-seq time-course experiment in S. cerevisiae. Cells were profiled at multiple time points before and after rapamycin treatment. The analysis identifies highly variable genes, accounts for cell-cycle-driven variation by binning cells into narrow cell-cycle time windows, and tracks how gene variability changes across time after rapamycin treatment.

Key questions addressed:

  • Which genes are the most variable in wild-type yeast at steady state (before rapamycin)?
  • How does gene variability change over time following rapamycin treatment?
  • Are there co-expression patterns among highly variable, lowly expressed genes (e.g., FIT2/FIT3)?
  • Do genes highlighted by a parallel BarSeq experiment overlap with the most variable genes identified here?

Data

The analysis expects the following input files in a data/ directory (not included in this repository):

File Description
2021_RAPA_TIMECOURSE.tsv.gz Gene count matrix (cells × ~5,843 genes) across all strains and time points
Cell_Cycle_Metadata_01112024.tsv.gz Cell-cycle phase and pseudotime assignments for each cell

The count matrix contains cells from multiple genetic backgrounds (Gene column) sampled at several time points (Pool column, 1–8). Pools 1–2 correspond to the pre-rapamycin baseline; pools 3–8 cover the time course after treatment.

Repository Structure

.
├── code/
│   ├── Gene_Variance.Rmd                    # 01 – Gene-level variance and gene-set annotation
│   ├── Bootstrapping.Rmd                    # 02 – Bootstrap analysis to determine minimum cell count per bin
│   ├── Cluster_Cells.Rmd                    # 03 – Seurat-based cell clustering by cell-cycle phase
│   ├── IntraCluster_Analysis.Rmd            # 04 – Intra-cluster variance analysis (pre-rapamycin)
│   ├── IntraCluster_Analysis_FIT2vsFIT3.Rmd # 05 – Deep-dive into FIT2/FIT3 co-expression
│   ├── IntraCluster_AllTimePoints.Rmd       # 06 – Intra-cluster variance across all time points
│   ├── Barseq_Variance.Rmd                  # 07 – Cross-comparison with BarSeq candidate genes
│   ├── Pdr5_Pdr3.Rmd                        # Exploratory analysis of PDR5 and PDR3 expression
│   ├── jobs_to_submit.R                     # Renders all numbered Rmd files sequentially
│   ├── submit_jobs.sh                       # SLURM submission script (NYU Greene HPC)
│   └── functions/
│       ├── loadNoRapaTreat.R                # Loads & preprocesses WT cells before rapamycin
│       ├── LoadWholeWtDataset.R             # Loads & preprocesses all WT cells (all time points)
│       └── readSTARsoloCounts.R             # Fixed version of Seurat's STARsolo count reader
├── images_for_rmd/                          # Static images embedded in Rmd reports
│   ├── Blast_FIT2vsFIT3.png
│   ├── CLUSTALW_FIT2vsFIT3_DNA.png
│   ├── CLUSTALW_FIT2vsFIT3_protein.png
│   └── FIT2_FIT3_on_DNA.png
├── LICENSE
└── README.md

Results (HTML reports, plots, .Rds objects) are written to a results/ directory that is created automatically at run time.

Analysis Workflow

The numbered Rmd scripts are designed to be run in order:

  1. Gene_Variance – Calculates per-gene variance, annotates genes using biomaRt and clusterProfiler, and exports gene statistics and gene-set descriptions.
  2. Bootstrapping – Bootstraps random subsets of cells (250–2,000) to determine how many cells per time bin are needed to obtain a regression model close to the full-dataset model (target: Pearson ≥ 0.95, achieved at ~800–1,000 cells).
  3. Cluster_Cells – Creates a Seurat object from the pre-rapamycin WT cells and clusters them to confirm that cells separate by cell-cycle phase.
  4. IntraCluster_Analysis – Divides cells into 3-minute cell-cycle time bins, fits a linear model per bin, computes residuals, and rank-combines genes across bins to identify the most variable genes independent of cell-cycle progression.
  5. IntraCluster_Analysis_FIT2vsFIT3 – Investigates the correlated high-expression bursts of FIT2 and FIT3, including sequence-level comparisons to rule out mapping artifacts.
  6. IntraCluster_AllTimePoints – Extends the intra-cluster variance analysis to all rapamycin time points (merging consecutive pool pairs to maintain sufficient cell counts per bin).
  7. Barseq_Variance – Cross-references candidate genes from a parallel fluconazole BarSeq experiment with the scRNA-seq variability rankings.

Running the Analysis

HPC (SLURM — NYU Greene)

cd code/
sbatch submit_jobs.sh

This loads R 4.3.1, then runs jobs_to_submit.R, which renders all seven numbered Rmd files and saves HTML reports to ../results/.

Local / Interactive

Open any individual .Rmd file in RStudio and knit it, or render from the R console:

setwd("code/")
rmarkdown::render("Gene_Variance.Rmd", output_dir = "../results/")

To run the full pipeline sequentially:

setwd("code/")
source("jobs_to_submit.R")

Dependencies

The analysis uses R (≥ 4.3) with the following packages:

CRAN: tidyverse, reshape2, Seurat, ggpubr, ggridges, ggExtra, gridExtra, readxl, knitr, kableExtra, RColorBrewer, conflicted

Bioconductor: biomaRt, clusterProfiler, enrichplot, pathview, org.Sc.sgd.db, tidyheatmaps

Other: Matrix

Author

Simone Zaghen

License

MIT

About

Single cell RNA-sequencing on S. cerevisiae

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages