A Streamlit web application for Reference Data-Driven (RDD) analysis of GNPS molecular networking data.
This application helps researchers analyze GNPS (Global Natural Products Social Molecular Networking) data using a reference-driven approach. It enables ontology-based counting, visualization, and statistical analysis of metabolomics data.
- RDD Count Table Generation - Create reference data-driven counts from GNPS networks
- Interactive Visualizations - Box plots, heatmaps, and bar charts for data exploration
- PCA Analysis - Principal Component Analysis with CLR transformation
- Sankey Diagrams - Flow visualization of metabolite classifications
- GNPS Integration - Direct access via Task ID or file upload
Access the app online at: https://gnpsrdd.streamlit.app/
- Python 3.11+
- pip
To run the app locally:
# Clone the repository
git clone https://github.com/AlejandroMC28/gnps_rdd_app.git
cd gnps_rdd_app
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Run the app
streamlit run Home.pyThe app will open in your default browser at http://localhost:8501
- Upload GNPS network file or enter GNPS Task ID
- Select sample types (simple/complex/all)
- Choose sample groups
- Generate RDD counts across ontology levels
- Create box plots, heatmaps, and bar charts
- Compare different sample groups
- Explore reference type distributions
- Perform dimensionality reduction
- Apply CLR transformation
- Visualize sample clustering
- Visualize metabolite classification flows
- Track ontology hierarchies
# Run all tests
make test
# Or using pytest directly
pytest -v
# Check code quality
make lint
# Format code
make format- Streamlit - Web application framework
- Pandas/NumPy - Data manipulation
- Plotly/Matplotlib - Visualizations
- scikit-learn - PCA analysis
- scikit-bio - CLR transformation
- gnpsdata - GNPS data access
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests:
make test - Format code:
make format - Submit a pull request
Apache license 2.0
If you use this tool in your research, please cite:
[Citation information to be added]
For questions or issues, please open a GitHub issue.