This repository contains the R code and analysis pipeline for the manuscript:
Roth et al. (2026). Netrin-1 blockade alleviates resistance to first line chemotherapy in locally advanced pancreatic cancer. Nature.
The analysis covers the preprocessing of microBulk RNA-seq from FFPE samples, molecular subtyping, differential expression analysis (Pre vs. Post therapy), and integration with public datasets (GSE253260, GSE131050).
-
Preprocessing: Alignment with Rsubread and quantification for FFPE-specific considerations.
-
Classification: Molecular subtyping using PDACMOC, PurIST, and ESTIMATE.
-
Differential Expression: edgeR pipeline for paired and unpaired analysis.
-
Validation: Integration and GSEA comparison with Nicolle et al. and Linehan et al. datasets.
You will need R (>= 4.0) and the following core Bioconductor packages: edgeR, Rsubread, clusterProfiler, org.Hs.eg.db, and singscore.
Clone this repository:
git clone https://github.com/Genomics-Consulting/Netris_LapNet.gitOpen Netris_LapNet.Rproj in RStudio.
Restore the R environment using renv:
install.packages("renv")
renv::restore() - First, create the base environment containing the R and Python dependencies:
# bash
conda env create -f env/PDACMOC_env.yml
conda activate PDACMOC- The PDACMOC and ADVOCATE packages must be installed from source after activating the environment. From within the directory where you have cloned the PDACMOC repository, run:
# Inside an R session
# Install the ADVOCATE dependency required for stroma classification
install.packages("inst/packages/ADVOCATE_0.1.0.tar.gz", repos = NULL, type = "source")
# Install the main PDACMOC package
install.packages(".", repos = NULL, type = "source")- The PDACMOC package uses Python-based machine learning models. Script 2_molecular_classification.R is configured to use the Python interpreter provided by the Conda environment:
reticulate::use_condaenv("PDACMOC")While data/pdata_LapNet.csv is included in this repo, the raw expression data and large objects should be downloaded from GEO:
-
LapNet Data: GEO Accession GSE319924
-
Public Data: GSE253260 (Nicolle et al.), GSE131050 (Linehan et al.), and GSE225691 (Cassier et al.).
The analysis is divided into sequential scripts. Please run them in order:
-
scripts/1_preprocessing.R: Alignment and initial QC. -
scripts/2_molecular_classification.R: Application of PDAC-specific classifiers. -
scripts/3_differential_Pro.vs.Pre.R: Identification of DEGs and GSEA. -
scripts/4_public_datasets.R: Processing and integration of validation cohorts. -
scripts/5_LapNet_pdata.R: Consolidation of metadata for final figures. -
scripts/6_Figures.R: Generation of all main and extended figures.
If you use this code or the LapNet dataset, please cite:
Roth et al. (2026). Netrin-1 blockade alleviates resistance to first line chemotherapy in locally advanced pancreatic cancer. Nature.
For questions or collaboration opportunities, please contact us at contact@genomicsconsulting.eu or visit our website.
Genomics Consulting SARL – 999 261 738 R.C.S. Lyon
Registered Office: 36B rue de la Batterie, 69500 Bron, France