Streamlit : Multiple Disease Prediction

Introduction

A multiple disease prediction web application built using machine learning provides a fast, accessible and interactive way for early health screening.
This project allows users to input medical parameters and instantly receive predictions for three major conditions
– Diabetes
– Heart disease
– Parkinson’s disease

In a world where early awareness can significantly improve health outcomes, having a lightweight digital tool that offers instant health insights is extremely valuable. Machine learning enables this by analyzing patterns from medical datasets and delivering quick predictions through a simple interface.
Using Python and Streamlit the system delivers a smooth browser based application capable of real time predictions using three separate trained machine learning models.
The goal of this application is not to replace medical diagnosis, but to support early awareness and encourage users to take proactive steps toward their health.

Project Overview

Machine learning powered multiple disease prediction system

Integrated into a Streamlit web app with sidebar navigation for easy module switching

Uses three pre trained models loaded from pickle files

Accepts disease specific input values and returns an instant prediction for each condition

Models included
Diabetes prediction model
Heart disease prediction model
Parkinson’s disease prediction model

Libraries Used

NumPy for numerical array handling

Pickle for loading the pre trained ML models

Streamlit for building the web interface

Streamlit Option Menu for sidebar navigation

Scikit Learn models used offline before exporting to pickle files

Application Details

The project loads three separate models stored as diabetes_model.sav, heartdisease_model.sav, and parkinson_model.sav

Each disease prediction section has its own user input fields displayed in organized columns, allowing structured and readable data entry.

1 Diabetes Prediction Inputs
Number of pregnancies
Glucose level
Blood pressure
Skin thickness
Insulin level
BMI
Diabetes pedigree function
Age

2 Heart Disease Prediction Inputs
Age
Sex
Chest pain type
Resting blood pressure
Cholesterol
Fasting blood sugar
Resting ECG results
Maximum heart rate
Exercise induced angina
Oldpeak
Slope
Major vessels count (ca)
Thal value

3 Parkinson’s Disease Inputs
A set of 22 vocal frequency and biomedical parameters including MDVP measures, jitter values, shimmer values, NHR, HNR, RPDE, DFA, spread measures, D2 and PPE

Streamlit : Diabetes Prediction

User values collected through Streamlit text inputs

Inputs converted into numeric form when required

Values structured into a list and then into an array

Array reshaped properly so the ML model understands it is a single prediction case

Model returns a binary output where
Zero means the person does not have the disease
One means the person has the disease

Model Interaction

Each model is loaded using pickle load at app start

When user clicks the prediction button the corresponding function
Collects inputs
Converts and reshapes values
Feeds them into the correct model
Displays a clean readable message to the user

Example logic used
If prediction equals one return person has the disease
Otherwise return person does not have the disease

Streamlit Interface

A sidebar menu allows switching between Diabetes Heart Disease and Parkinson’s Prediction

Each disease module has its own section title and organized input layout

Prediction results appear using st.success for clean and visible output

Error messages are shown when non numeric values are entered in disease modules that require numeric input

The interface is simple minimal and effective for fast testing.

Prediction Flow

1 User selects disease type from sidebar
2 User enters medical values
3 Inputs are validated and converted
4 ML model processes the values
5 Result is shown immediately on screen

Deployment Possibilities

Deploy easily on Streamlit Cloud for public use

Package into a Flask or FastAPI project for full stack deployment

Use inside community health tools for awareness sessions

Add authentication or admin dashboards for clinics

Key Takeaways

A complete multi disease prediction web application using machine learning

Demonstrates how multiple trained models can run inside a single interactive interface

Shows real world use of ML for health screening and awareness

Easy to extend with more diseases, better UI components and improved analytics

Future Enhancements

Add automatic validation for all numeric inputs

Replace text fields with sliders or dropdowns for better accuracy

Add visual graphs showing input distributions or health indicators

Include explanations of predictions using SHAP or similar tools

Make interface mobile friendly and responsive

This project highlights how machine learning and simple web frameworks can come together to create powerful tools that improve awareness and accessibility in healthcare. By allowing users to check for diabetes, heart disease or Parkinson’s disease within seconds, this application demonstrates the impact of combining technology with health driven use cases. It also shows how multi model systems can be packaged into a single unified interface, making it an excellent learning project for anyone exploring data science, ML deployment or health informatics.

Share this post:
Facebook
Twitter
LinkedIn

Web Development Projects

Interested in more? Check out my Machine Learning projects as well.

Machine Learning Projects

Interested in more? Check out my Machine Learning projects as well.

Python Projects

Interested in more? Check out my Python projects as well.