Skip to content

CMiNetShinyApp designed to generate consensus microbiome networks by integrating results from multiple network construction algorithms

License

Notifications You must be signed in to change notification settings

solislemuslab/CMiNetShinyAPP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CMiNetShinyAPP

GitHub license GitHub Issues Code Size GitHub Releases

Description

CMiNetShinyApp is a Shiny application designed to construct consensus microbiome networks by integrating results from multiple network construction algorithms. Tailored specifically for microbiome data, this tool captures the intricate relationships between microbial taxa, offering insights into complex biological systems and their impacts on health and disease.

The CMiNetShinyApp incorporates a variety of established algorithms, including Pearson and Spearman correlation, Biweight midcorrelation, Sparse Correlations for Compositional data (SparCC), Sparse InversE Covariance estimation for Ecological Association and Statistical Inference (SpiecEasi), Semi-Parametric Rank-based Correlation and Partial Correlation Estimation (SPRING), Generalized Co-Occurrence Differential Abundance analysis (gCoda), Correlation Inference for Compositional Data through Lasso (CCLasso), and a novel algorithm based on conditional mutual information (CMIMN). These algorithms generate individual microbial association networks, which CMiNet combines into a single, weighted consensus network. By integrating the strengths of each method, CMiNet delivers a robust and comprehensive representation of microbial interactions.

Table of Contents

Methods Included in CMiNet ShinyAPP

CMiNet ShinyAPP employs a range of established algorithms to construct individual microbial association networks, including:

CMiNet combines these networks into a single, weighted consensus network, leveraging the strengths of each method to provide a comprehensive and reliable representation of microbial interactions.

CMiNet Shiny App

The CMiNet Shiny App simplifies the process of constructing, visualizing, and analyzing microbiome networks. It includes the following features:

  • CMiNet: Construct a weighted network, select algorithms, and download results.
  • Visualization: This visualization compares network structures based on four different thresholds. Below each network depicts the number of nodes with degree > 0 (NN Deg >0), the number of edges (N Edges), and the maximum degree value in the network (Max-Deg).
  • Final Network: Explore the final network based on user-defined thresholds.
  • About: Access detailed information about running and interpreting CMiNet results.

Source Code

The CMiNetShinyApp is an open-source project, and its source code is available in this repository. The main web app code is located in app.R.

Running the web apps locally

To run the app locally, follow these steps: 1- Clone the Repository: Download the code from GitHub using the following command:

git clone https://github.com/solislemuslab/CMiNetShinyAPP.git

2- Install Required Dependencies: Ensure all required R packages are installed. Use the following script to install them:

install.packages(c("devtools", "shiny", "shinyWidgets", "shinyBS", 
                   "igraph", "tidyverse", "visNetwork"))

devtools::install_github("solislemuslab/CMiNet")

# Install dependencies for SPRING and SpiecEasi (order matters):
devtools::install_github("zdk123/[email protected]")
devtools::install_github("GraceYoon/SPRING")

If you encounter errors during installation, ensure you manually install any missing dependencies. 3- Run the App: Open the project file CMiNet_shinyapp.Rproj and run the app using:

shiny::runApp()
  1. Running Instructions: Once the app is running, you can upload your microbiome dataset, select algorithms, and explore results in the visualization tab. Use the sample dataset provided to familiarize yourself with the workflow.

CMiNet ShinyApp Sample Data

The CMiNet ShinyApp includes a sample dataset from the American Gut Project (available via the SpiecEasi package) to demonstrate its functionality. You can download this Sample Gut Microbiome Dataset to explore the required data format. Additionally, the Weighted Gut Microbiome Network generated by CMiNet ShinyApp using this sample data is available for download, allowing you to examine the output and functionality of the tool in detail.

Define the parameter on all Algorithms

The CMiNet ShinyApp enables users to customize the default parameters of each algorithm to suit their specific research needs and preferences. Below is a list of parameters for the various algorithms, pre-configured with default settings, which can be adjusted as needed.

  • sparcc_params = list(imax = 20, kmax = 10, alpha = 0.1, Vmin = 1e-4)
  • spiecEasi_mb_params= list(method = 'mb', lambda.min.ratio = 1e-2, nlambda = 15, pulsar.params = list(rep.num = 20, ncores = 4))
  • spiecEasi_glasso_params =params = list(method = 'glasso', lambda.min.ratio = 1e-2, nlambda = 15, pulsar.params = list(rep.num = 50), ncores = 4))
  • spring_params = list(Rmethod = "original", quantitative = TRUE, ncores = 5, lambdaseq = "data-specific", nlambda = 15, rep.num = 20)
  • gcoda_params = list(counts = FALSE, pseudo = 0.5, lambda.min.ratio = 1e-4, nlambda = 15, ebic.gamma = 0.5)
  • c_MI_params = list(quantitative = TRUE, q1 = 0.9, q2 = 0.95)
  • cclasso_params = list(counts = FALSE, pseudo = 0.5, k_cv = 3, lam_int = c(1e-4, 1), k_max = 20, n_boot = 20)

Sample Data Result from CMiNet ShinyApp

The following figure represents the result of running the CMiNet ShinyApp on the sample dataset. This visualization was generated using the Visualization Tab, showcasing the weighted microbiome network constructed from the sample data. The figure illustrates the intricate microbial associations derived from the consensus network methodology.

Reporting Issues and Asking Questions

If you encounter a bug, experience a failed function, or have a feature request, please open an issue in the GitHub issue tracker.

License

CMiNet ShinyApp is licensed under the GNU General Public License v3.0 (GPL-3). © Solis-Lemus Lab (2024).

Citation

If you use CMiNet ShinyApp in your work, we kindly ask that you cite the following paper:

@article{aghdam2025cminet,
  title={CMiNet: An R Package and User-Friendly Shiny App for Constructing Consensus Microbiome Networks},
  author={Aghdam, Rosa and Sol{\'\i}s-Lemus, Claudia},
  journal={bioRxiv},
  pages={2025--05},
  year={2025},
  publisher={Cold Spring Harbor Laboratory}
}
#CMIMN
@article{aghdam2025leveraging,
  title={Leveraging Bayesian Networks for Consensus Network Construction and Multi-Method Feature Selection to Decode Disease Prediction},
  author={Aghdam, Rosa and Shan, Shan and Lankau, Richard and Solis-Lemus, Claudia},
  journal={bioRxiv},
  pages={2025--04},
  year={2025},
  publisher={Cold Spring Harbor Laboratory}
}
#SpiecEasi
@article{kurtz2015sparse,
  title={Sparse and compositionally robust inference of microbial ecological networks},
  author={Kurtz, Zachary D and M{\"u}ller, Christian L and Miraldi, Emily R and Littman, Dan R and Blaser, Martin J and Bonneau, Richard A},
  journal={PLoS computational biology},
  volume={11},
  number={5},
  pages={e1004226},
  year={2015},
  publisher={Public Library of Science San Francisco, CA USA}
}
#SPRING
@article{yoon2019microbial,
  title={Microbial networks in SPRING-Semi-parametric rank-based correlation and partial correlation estimation for quantitative microbiome data},
  author={Yoon, Grace and Gaynanova, Irina and M{\"u}ller, Christian L},
  journal={Frontiers in genetics},
  volume={10},
  pages={516},
  year={2019},
  publisher={Frontiers Media SA}
}
#gCoda
@article{fang2017gcoda,
  title={gCoda: conditional dependence network inference for compositional data},
  author={Fang, Huaying and Huang, Chengcheng and Zhao, Hongyu and Deng, Minghua},
  journal={Journal of Computational Biology},
  volume={24},
  number={7},
  pages={699--708},
  year={2017},
  publisher={Mary Ann Liebert, Inc. 140 Huguenot Street, 3rd Floor New Rochelle, NY 10801 USA}
}
#CCLasso
@article{fang2015cclasso,
  title={{CCLasso}: correlation inference for compositional data through Lasso},
  author={Fang, Huaying and Huang, Chengcheng and Zhao, Hongyu and Deng, Minghua},
  journal={Bioinformatics},
  volume={31},
  number={19},
  pages={3172--3180},
  year={2015},
  publisher={Oxford University Press}
}
#NetCoMi
@article{peschel2021netcomi,
  title={NetCoMi: network construction and comparison for microbiome data in R},
  author={Peschel, Stefanie and M{\"u}ller, Christian L and Von Mutius, Erika and Boulesteix, Anne-Laure and Depner, Martin},
  journal={Briefings in bioinformatics},
  volume={22},
  number={4},
  pages={bbaa290},
  year={2021},
  publisher={Oxford University Press}
}
#SPARCC
@article{friedman2012inferring,
  title={Inferring correlation networks from genomic survey data},
  author={Friedman, Jonathan and Alm, Eric J},
  journal={PLoS computational biology},
  volume={8},
  number={9},
  pages={e1002687},
  year={2012},
  publisher={Public Library of Science}
}

About

CMiNetShinyApp designed to generate consensus microbiome networks by integrating results from multiple network construction algorithms

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages