Analysis code for:
Nikolopoulos D, Cindrić A, Charitidis K, Sherina N, Radovani Trbojević B, Pučić-Baković M, Šimunović J, Patenaude A-M, Pribić T, Tamirou F, Lauc G, Houssiau FA, Parodis I. Glycomic Profiles of IgG, C3 and Alpha-1-Acid Glycoprotein (AGP) Before and One Year After Treatment for Active Lupus Nephritis. Cells. 2026;15(5):433. doi:10.3390/cells15050433
The scripts compare glycan markers of total IgG, IgG Fab and Fc, complement C3, alpha-1-acid glycoprotein (AGP) and the total serum N-glycome between baseline and month 12. They then relate the markers to clinical indices, kidney histology, treatment response and renal impairment.
No patient data are included. As stated in the paper, the data are available upon reasonable request.
Run them in this order:
| Script | What it does |
|---|---|
Glycans_Preparation.Rmd |
Joins the six glycan datasets with the clinical data, computes log2 fold changes (month 12 over baseline) and runs paired Wilcoxon signed-rank tests with Benjamini-Hochberg FDR correction. Writes the tables in Output_Data/ that the figure scripts read |
Other/Check_Stats.Rmd |
Builds the glycan annotations (Gl_annotations.xlsx, Gl_annotations_clean.xlsx) that label the markers in the figures. Its later sections collect each figure's significant markers into one table, so run those after the figure scripts |
Glycans_Figure_1.Rmd |
Figure 1: volcano plot of glycan changes from baseline to month 12 |
Glycans_Figure_2.Rmd |
Figure 2: Spearman correlations of glycan markers with clinical indices |
Glycans_Figure_3.Rmd |
Figure 3: Spearman correlations of glycan markers with clinical and histopathological features. Also writes Histology_data.csv, which Figure 4 reads |
Glycans_Figure_4.Rmd |
Figure 4: correlations of glycan deltas with clinical and histopathological measures |
Glycans_Figure_5.Rmd |
Figure 5: Firth-penalised logistic regression of glycan markers against clinical and histopathological response |
Glycans_Figure_6.Rmd |
Figure 6: univariable and Firth-penalised multivariable Cox regression of glycan markers against time to renal impairment |
The write_csv() and write_xlsx() calls that save the intermediate tables are commented out. Uncomment them on a first run.
Paths are hard-coded under ~/SLE/Glycans/:
Data/: input spreadsheetsOutput_Data/: intermediate tables and resultsPlots_2/Final_Figures/: figures
Edit them to match your own layout.
The analyses in the paper used R 4.4.2. To install the packages:
install.packages(c(
"tidyverse", "readxl", "writexl", "broom", "broom.helpers",
"ggtext", "ggrepel", "patchwork", "glmnet", "logistf",
"survival", "coxphf", "timereg", "ggfortify", "gtsummary"
))