Microbial multiomics approach in understanding blue-veined cheeses bitterness
Abstract
Blue-veined cheeses are regularly described as bitter but links between microbial diversity, function, gene expression and bitterness have not been deciphered yet. In the present work, microbiological, biochemical, metabarcoding (amplicons sequencing), metagenomic (DNA-Seq) and metatranscriptomic (RNA-Seq) were combined to better understand the potential origins of excessive bitterness in semi-soft blue-veined PDO Bleu d’Auvergne cheeses by exploring microbial composition, function, expression, conjugated to physico-chemical analysis and sensorial analysis. Physicochemical analyses revealed significative cheese bitterness differences associated with multiples factors in milk and in several cheeses’ parameters. After 30 days of ripening, Low Bitter (LB) cheeses were characterized by a higher bacterial and yeasts richness and diversity while High Bitter (HB) cheeses were characterized by one most dominant filamentous fungus Penicillium roqueforti and one most dominant bacterial species Lactococcus lactis. It affected in return the use of resources presents in milk through preferential mobilization of metabolic pathways as fatty acid desaturation (HB) and fatty acid biosynthesis (LB). Increase of salt concentration modulated the microbial community which withstood with osmostress. Abundance, richness, diversity of bacteria, eukaryote especially yeasts, phages and mycovirus were differentially involved in resources utilization from milk proteins, regulating cheese bitterness.
ADAMOS Analysis - Modular Structure
This directory contains modular Quarto (QMD) files organized by data dependencies to recreate all figures and tables from the scientific paper: Microbial multiomics approach in understanding blue-veined cheeses bitterness, Michel et al.
Directory Structure
analysis/
├── README.md # Markdown version
├── README.html # This file
├── 01_physicochemical_sensorial.qmd # Figure 1, Table S1
├── 02_amplicon_taxonomy.qmd # Figure 2, Figure S1, Table S2
├── 03_shotgun_metagenomics.qmd # Figure 3, Table S3
├── 04_rnaseq_pathways.qmd # Figure 4, Figure S2
├── 05_multiomics_integration.qmd # Figure 5, Figure S3, Figure S4, Table S4
└── output_html/ # Rendered HTML reports (01-05)
R/
├── helper_functions.R # Shared helper functions
└── cog_cat.r # COG category definitions
data/
├── amplicon_phyloseq/ # 16S and ITS phyloseq objects
├── shotgun_data/ # Shotgun metagenomics data
├── rnaseq_data/ # RNA-seq data
├── metadata_sup/ # Supplementary metadata
├── ko00001.rda # KEGG reference data
└── KEGG_modules.rda # KEGG modules data
Analysis Files Overview
01_physicochemical_sensorial.qmd
Data Required: Physicochemical metadata only
Generates:
Figure 1: Boxplots of milk composition, sensorial scores, and cheese composition with statistical tests (t-tests with Bonferroni correction)
Supplementary Table S1: ANOVA and Fisher's exact test results
Key Analyses:
Milk composition comparison (HB vs LB)
Sensorial scores across ripening times
Cheese physicochemical properties
02_amplicon_taxonomy.qmd
Data Required: Amplicon phyloseq objects (16S and ITS)
Generates:
Figure 2: Taxonomy barplots at genus level
Panel a: Bacterial composition (16S, >1% abundance)
Panel b: Fungal composition (ITS, >1% abundance)
Supplementary Figure S1: Alpha diversity boxplots with Tukey HSD
Bacterial and fungal Observed and Shannon indices
Supplementary Table S2: DESeq2 differential abundance results
Key Analyses:
Taxonomic composition across bitterness classes and ripening times
Alpha diversity (Observed richness, Shannon index)
Differential abundance analysis (HB vs LB at 30 days)
03_shotgun_metagenomics.qmd
Data Required: Shotgun metagenomics data (bins, taxonomy, metadata)
Generates:
Figure 3a: Coverage scatter plot (HB vs LB bins)
Figure 3b: Shannon diversity boxplots by domain
Figure 3c: Virus-microbe correlation heatmap
Supplementary Table S3: BUSCO statistics (completeness ≥70%)
Key Analyses:
Bin abundance comparison (log2 fold change)
Shannon diversity across domains (Bacteria, Eukaryota, Viruses)
Pearson correlations between viruses and microbes (|r| > 0.7)
04_rnaseq_pathways.qmd
Data Required: RNA-seq data (RPKM, maaslin results, eggnog annotations)
Generates:
Figure 4: KEGG pathway enrichment dotplots
Panel a: LB30-associated pathways
Panel b: HB30-associated pathways
Supplementary Figure S2: COG category bar plots
Key Analyses:
KEGG pathway enrichment (clusterProfiler)
COG functional category distribution
Differential gene expression (from Maaslin3 results)
05_multiomics_integration.qmd
Data Required: All data types (amplicons, shotgun, RNA-seq, physicochemical)
Generates:
Figure 5: Mixomics multiblock sPLS-DA
Arrow plot showing sample projections
Loadings plots for each data block
Supplementary Figure S3: Correlation heatmap (sensorial/physico/shotgun)
Supplementary Figure S4: Mixomics component 1 correlations
Supplementary Table S4: Correlation table (sensorial/physico/KEGG)
Key Analyses:
Multiblock sPLS-DA integration
Cross-omics correlations
Feature selection and importance
How to Use
Prerequisites
Install required R packages:
Core packages
install.packages(c("tidyverse", "vroom", "ggpubr", "rstatix",
"reshape2", "DT", "knitr"))
Microbiome packages
if (!require("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install(c("phyloseq", "DESeq2", "clusterProfiler",
"enrichplot"))
Additional packages
install.packages(c("vegan", "microViz", "mixOmics", "mclust",
"FactoMineR", "factoextra", "ComplexHeatmap",
"circlize", "ggrepel", "ggh4x"))
Running Individual Analyses
Each QMD file can be rendered independently:
Render a single analysis
quarto render analysis/01_physicochemical_sensorial.qmd
Render all analyses
quarto render analysis/
Or in R/RStudio:
Render a single file
quarto::quarto_render("analysis/01_physicochemical_sensorial.qmd")
Render all files
lapply(list.files("analysis", pattern = "\.qmd$", full.names = TRUE),
quarto::quarto_render)
Output
Each QMD file generates a self-contained HTML report with:
Interactive figures
Statistical test results
Session information for reproducibility
HTML files are saved in the same directory as the QMD files.
Data Organization
The modular structure groups analyses by data dependencies:
Physicochemical only → File 01
Amplicons only → File 02
Shotgun only → File 03
RNA-seq only → File 04
All data integrated → File 05
This organization:
Minimizes data loading overhead
Allows independent execution
Makes debugging easier
Facilitates parallel processing
Helper Functions
All shared functions are in R/helper_functions.R:
add_sup_data() - Add supplementary metadata to phyloseq objects
fill_tax_fun() - Fill taxonomy tables hierarchically
load_physicochemical_data() - Load physicochemical metadata
load_kegg_data() - Load KEGG reference data
load_amplicon_data() - Load and prepare 16S/ITS data
load_shotgun_data() - Load shotgun metagenomics data
load_rnaseq_data() - Load RNA-seq data
These functions ensure consistency across analyses and reduce code duplication.
Troubleshooting
Common Issues
Issue: "Cannot find file 'data/...'"
Solution: Ensure you're running from the project root directory or adjust paths in helper functions
Issue: "Package 'X' not found"
Solution: Install missing packages (see Prerequisites section)
Issue: "Object 'kegg_dt' not found"
Solution: Ensure load_kegg_data() is called before using KEGG functions
Issue: Memory errors with large datasets
Solution: Increase R memory limit: memory.limit(size = 16000) (Windows) or adjust system settings
Citation
If you use this code, please cite:
Michel, E., Theil, S., et al. (2024). Microbial multiomics approach in understanding blue-veined cheeses bitterness. [Journal details]
Contact
For questions or issues:
Elisa Michel: elisa.michel@inrae.fr
Sébastien Theil: sebastien.theil@inrae.fr
Version History
v1.0 (2024-10-15): Initial modular structure
Created files 01-04
Implemented helper functions
Documented data dependencies
R, 4.4.3