Published July 21, 2026 | Version v1

Microbial Ecological Instability And Non-Linear Host Interactions Shape Airway Inflammation In HIV-Associated COPD.

  • 1. ROR icon Makerere University
  • 2. Makerere University Lung Institute
  • 3. ROR icon Max Delbrück Center
  • 4. Max Delbrück Centrum für Molekulare Medizin Experimental and Clinical Research Center

Description

COPD / HIV BAL Microbiome–Transcriptome Analysis 

Analysis code and processed-data inputs for the manuscript. This README lists 
what is in the repository, what each file is for, and where to find it. 

 

Scripts (R/) 

Run in numeric order — later scripts use objects and files produced by earlier ones. 

File 

What it is / does 

00_prep.R 

Loads and cleans sample metadata; builds the metadata object used by all downstream scripts 

01_diversity.R 

Alpha/beta diversity, PERMANOVA, diversity figure panels (Fig 3) 

02_genera.R 

Per-genus relative-abundance mixed models (visite × DualStatus) 

03_batch_correction.R 

Sentinel-control batch/drift correction; writes the bloomer/decreaser genus scores 

04_genus_cell_LM.R 

CLR-transformed genus × cell-fraction linear models 

05_RNA_associations.R 

DESeq2 VST, KEGG enrichment, RNA association figure panels 

06_linear_models.R 

Gene–microbe linear models with confounder adjustment 

07_metadeconf.R 

MetaDeconfoundR on the full cohort 

08_metadeconf_HIVpos.R 

Stratified MetaDeconfoundR (HIV+/COPD strata) 

09_lung_variables.R 

Delta lung-function models 

utils_ggsave.R 

Plotting/export helper, sourced by the figure scripts (not run standalone) 

 

 

Processed-data inputs (data/) 

These are the actual inputs the scripts read. Files originally saved with a 
.r extension are binary R objects (load with readRDS()), renamed to .rds. 

File 

What it is 

Used by 

1224_Samp_data.csv 

Sample metadata table 

00 

rarefied_filtered_relAb_genus.rds 

Genus relative abundance; loads via readRDS() 

01, 02 

rarefied_filtered_relAb_otu.rds 

OTU relative abundance; loads via readRDS() 

01 

rarefied_filtered_relAb_phylum.rds 

Phylum relative abundance; loads via readRDS() 

01 

rarefied_filtered_raw_reads_genus.rds 

Raw rarefied genus reads; loads via readRDS() 

01, 03 

rarefied_filtered_raw_reads_otu.rds 

Raw rarefied OTU reads; loads via readRDS() 

01 

rarefied_filtered_raw_reads_phylum.rds 

Raw rarefied phylum reads; loads via readRDS() 

01 

genus_OTU_mapping.tsv 

Genus ↔ OTU lookup 

01, 02 

df_wide_genus_withscores.rds 

Genus table with batch scores (output of 03, kept so 01 runs standalone); loads via readRDS() 

01 

counDubliClust_82samples.rds 

RNA count matrix (object counDubliClust); loads via readRDS() 

05 

colData11624.rds 

RNA/sample colData (object colData); loads via readRDS() 

05, 07, 08 

normalized_logcpm_tmm.rds 

TMM-normalised logCPM; loads via readRDS() 

06 

25820_normalized_nonlog_cpm.csv 

Non-log CPM 

06 

combined_raw_long_cytofCorrected.rds 

CyTOF cell-fraction long table; loads via readRDS() 

04, 07 

cell_type_props_all_metadata.csv 

Cell-type proportions with metadata 

04 

 

 

Outputs (output/) 

Generated by the scripts — figures and result tables (model_results_*, 
aic_*, cca_*, permanova_*, anova_*). These are produced, not inputs, 
and are written here when the scripts run. 

 

Where to find things at a glance 

  • Analysis code → R/ 

  • Data the scripts read → data/ 

  • Results the scripts write → output/ 

  • Not included: result tables are outputs, so they live in output/ after a 
    run and are not committed as inputs. 

Files

project.zip

Files (354.9 MB)

Name Size
md5:c484f8818c68e9cad734f3c458cd2a5a
354.9 MB Preview Download