amRviz is an interactive Shiny dashboard for exploring antimicrobial resistance (AMR) data and machine learning model results generated by amRml.
This is the final package in the AMR package suite, JRaviLab/amR:
The package is currently available via GitHub and will be submitted to Bioconductor.
# Install BiocManager if needed
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
# Install amRviz from GitHub
if (!requireNamespace("devtools", quietly = TRUE))
install.packages("devtools")
devtools::install_github("JRaviLab/amRviz")
library(amRviz)
# Launch with built-in Shigella flexneri demo data
launchAMRDashboard()
# Launch with your own amRml output
launchAMRDashboard(results_root = "/path/to/your/amRml/results")The dashboard will open in your default web browser. Species dropdowns will populate automatically from whichever data is loaded.
The dashboard is organized into tabs:
amRviz reads the parquet files produced by amRml. Files must be organized into per-species subdirectories:
results/
├── Shigella_flexneri/
│ ├── Sfl_ML_perf.parquet
│ ├── Sfl_country_ML_perf.parquet
│ ├── Sfl_year_ML_perf.parquet
│ ├── Sfl_cross_ML_perf.parquet
│ ├── Sfl_ML_top_features.parquet
│ ├── Sfl_country_ML_top_features.parquet
│ ├── Sfl_year_ML_top_features.parquet
│ └── Sfl_metadata.parquet
├── Klebsiella_pneumoniae/
│ ├── Kpn_ML_perf.parquet
│ └── ...
└── ...Shigella_flexneri) is used as the display label throughout the dashboard.Sfl) inside each parquet is used for internal filtering.results_root = "/path/to/results" to launchAMRDashboard() to load your own data. Without this argument the dashboard loads the bundled demo data.*_ML_perf.parquet)
| Column | Description |
|---|---|
species |
Species code (e.g. "Sfl") |
drug_or_class |
Drug or drug class abbreviation |
drug_label |
"drug" or "drug_class"
|
feature_type |
Molecular scale: genes, proteins, domains, struct
|
feature_subtype |
Data encoding: binary, counts
|
strat_label |
Stratification: blank (baseline), "country", or "year"
|
strat_value / strat_value_test
|
Trained-on / tested-on country or year (stratified/cross models) |
nmcc, bal_acc, f1, sens, spec
|
Performance metrics |
*_ML_top_features.parquet)
| Column | Description |
|---|---|
species |
Species code |
drug_or_class |
Drug or drug class abbreviation |
feature_type |
Molecular scale |
feature_subtype |
Data encoding |
strat_label |
Stratification (blank for baseline) |
Variable |
Feature identifier (gene/protein/domain ID) |
Importance |
Feature importance score |
Sign |
Direction of effect |
*_metadata.parquet)
| Column | Description |
|---|---|
genome_drug.genome_id |
Unique genome identifier |
genome_drug.antibiotic |
Antibiotic tested |
genome_drug.resistant_phenotype |
"Resistant" or "Susceptible"
|
genome.isolation_country |
Country of isolation |
genome.collection_year |
Collection year |
genome.host_common_name |
Host organism |
genome.isolation_source |
Isolation source |
drug_class |
Drug class |
resistant_classes |
All resistant drug classes for this isolate |
amRviz/
├── R/
│ ├── app.R # Main Shiny app (ui + server)
│ ├── utils.R # File loading and plot functions
│ ├── globals.R # Global variable declarations
│ ├── metadataUI.R # Metadata tab UI
│ ├── modelPerfUI.R # Model performance tab UI
│ ├── featureImportanceUI.R # Bug/Drug feature comparison tab UI
│ ├── crossModelComparisonUI.R # Model holdouts tab UI
│ ├── networkUI.R # Network tab UI
│ └── queryDataUI.R # Query data tab UI
├── inst/
│ ├── app/www/ # Static assets (CSS, images)
│ └── extdata/
│ └── Shigella_flexneri/ # Demo data (amRml output)
├── man/ # Documentation
├── vignettes/ # Usage vignette and figures
└── DESCRIPTIONThis package is being prepared for Bioconductor submission. It includes:
inst/extdata/
We welcome contributions! Please see our Contributing Guidelines for details.
Report bugs and request features at: https://github.com/JRaviLab/amRviz/issues
Please note that the amRviz project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.
BSD 3-Clause License. See LICENSE for details.
Corresponding author: Janani Ravi (janani.ravi@cuanschutz.edu)
JRaviLab: https://jravilab.github.io