Eastern European Bioinformatics and Computational Genomics Workshop (EEBG 2026)
Author: Tomek Gaczorek (Jagiellonian University)
This repository contains a comprehensive workflow for performing Differential Expression Analysis (DEA) on bulk RNA-seq data using R. The primary objective of this analysis is to identify differentially expressed genes between smoker and non-smoker groups, analyzing male and female cohorts separately based on the GSE237252 dataset.
The analysis utilizes the following data files:
GSE237252_raw_data.csv: Raw gene expression counts.GSE237252_males_metadata.csv: Metadata for the male cohort, detailing smoking status.GSE237252_females_metadata.csv: Metadata for the female cohort, detailing smoking status.
The analysis is conducted in R (v4.6.1) and relies on the following key Bioconductor and CRAN packages:
- Data manipulation:
dplyr - DEA core:
DESeq2 - Visualization:
ggplot2,enrichplot - Functional Analysis:
clusterProfiler,org.Hs.eg.db
- Raw counts are loaded and matched to corresponding metadata.
- Lowly expressed genes are filtered out based on a threshold (e.g.,
rowSums > 42).
- Model Design:
~SMOKING(comparing smokers vs. nonsmokers). - Standard DESeq2 pipeline steps: estimating size factors, estimating gene-wise dispersions, and fitting the negative binomial GLM.
- Log2 fold-change (LFC) shrinkage is applied to handle noise in low-count genes.
Several visual diagnostic tools are implemented to inspect the integrity of the data and normalization:
-
Raw vs. Normalized Counts: Evaluates the normalization efficacy.

-
Dispersion Estimates: Checks the mean-dispersion relationship.
.png)
-
Principal Component Analysis (PCA): Visualizes sample clustering by variance (PC1 & PC2) to observe group separations.

Significant genes are identified (using thresholds like padj < 0.01 and |log2FoldChange| > 2) and visualized using:
-
Log2-fold Shrinkage Density Plots: Comparing original vs. shrinked distributions.

-
MA Plot: Showing log-fold change against the mean of normalized counts.

-
Volcano Plot: Highlighting highly significant and highly folded-changed genes.

- Over-representation analysis of Gene Ontology (GO) Biological Processes (BP) is performed using
clusterProfileron the significantly differentially expressed genes. - The top enriched pathways are visualized using dot plots.
(Note: Add the GO-terms dotplot to the male_results folder and link it here when generated)
The repository also includes a complete replication of the pipeline specifically on the female cohort. This allows for an independent assessment and a cross-sex comparison of the transcriptomic impacts of smoking.
(Note: Ensure female plots are saved in the female_results directory using the same naming conventions to render correctly)
To reproduce the analysis:
- Clone the repository.
- Ensure the
GSE237252raw data and metadata CSV files are located in your working directory. - Open the main R script / Jupyter Notebook.
- Run the chunks sequentially to generate the DESeq2 objects, plots, and enrichment tables.
