HuMMANet

Overview

HuMMANet is a Bioconductor experiment data package for reproducible access to paired human microbiome-metabolome studies distributed through ExperimentHub. The package brings together study-level species profiles, original and harmonized metabolite profiles, matched sample metadata, and study-specific annotation resources through a consistent Bioconductor interface.

The motivation for HuMMANet is to make paired species and metabolite datasets easier to discover, load, and analyze across studies without requiring users to manually reconcile sample identifiers, metabolite annotations, or study-level resource formats. HuMMANet supports reproducible downstream analyses of microbiome-metabolome relationships, cross-study comparisons, and annotation-driven interpretation of metabolite features.

Each study bundle can include the following modalities:

Each study is returned as a MultiAssayExperiment:

Install

Install from Bioconductor:

if (!requireNamespace("BiocManager", quietly = TRUE)) {
  install.packages("BiocManager")
}
BiocManager::install("HuMMANet")

Install the development version from GitHub:

if (!requireNamespace("remotes", quietly = TRUE)) {
  install.packages("remotes")
}
remotes::install_github("ShivangiV-IIITD/HuMMANet")

Quick start

library(HuMMANet)
library(MultiAssayExperiment)
library(SummarizedExperiment)


# list all studies
studies <- HuMMANet_studies()
length(studies)
head(studies)

# inspect the indexed study metadata
idx <- HuMMANet_study_index()
head(
  idx[, c(
    "study",
    "has_MetadataProfile",
    "has_taxaAbundanceProfile",
    "has_OriginalMetaboliteProfile",
    "has_harmonizedMetaboliteProfile"
  )]
)

# check available modalities for one study
HuMMANet_available_modalities("DawkinsJ_2022")

# load one modality
metadata_profile <- HuMMANet_load_modality(
  "DawkinsJ_2022",
  "MetadataProfile"
)
dim(metadata_profile)

# load one full study
one_study <- HuMMANet_load_study("DawkinsJ_2022")
class(one_study)
names(experiments(one_study))
nrow(colData(one_study))

# inspect the sample metadata and assay containers
colData(one_study)[1:3, 1:6]
experiments(one_study)

# load the harmonized metabolite profile for one study
harmonized_profile <- HuMMANet_load_modality(
  "DawkinsJ_2022",
  "harmonizedMetaboliteProfile"
)
class(harmonized_profile)
dim(assay(harmonized_profile))
head(rowData(harmonized_profile)[, 1:6])

# load an annotation table attached to the study object
pathway_annotations <- HuMMANet_load_modality(
  "DawkinsJ_2022",
  "metabolitePathwayAnnotations"
)
dim(pathway_annotations)

# load selected studies and modalities
subset_data <- HuMMANet(
  studies = c("DawkinsJ_2022", "FranzosaE_2019"),
  modalities = c("MetadataProfile", "OriginalMetaboliteProfile")
)
names(subset_data)
class(subset_data[[1]])

See the vignette for a fuller walkthrough of study discovery, modality loading, and manipulation of the resulting MultiAssayExperiment and SummarizedExperiment objects.

Citation

If you use HuMMANet, please cite the preprint:

Verma S, Arora N, Ajay CP, Singh P, Mallick H, Ghosh TS. (2026). HuMMANet: A Harmonized Cross-Study Resource for Integrative Analysis of Human Gut Microbiome Metabolome Associations. bioRxiv. doi:10.64898/2026.08.24.746727

You can also retrieve the package citation from R:

citation("HuMMANet")