Skip to content

puniaiml/Water-potability-analysis

Repository files navigation

💧 Water Potability Analyzer


🚀 Overview

Water Potability Analyzer is a machine learning-powered web application that predicts whether water is safe for consumption based on 9 key water quality parameters.

The system uses a Random Forest Classifier along with data preprocessing and feature analysis to provide accurate predictions and actionable insights.

👉 Designed for real-world applications like:

  • Water quality monitoring
  • Environmental analysis
  • Public health assessment

🧠 Model Architecture

Component Details
Model Random Forest Classifier
Features 9 Water Quality Parameters
Preprocessing Missing value imputation + StandardScaler
Optimization GridSearchCV
Evaluation Cross-validation + Accuracy Score

🧪 Water Quality Parameters

  • pH
  • Hardness
  • Total Solids
  • Chloramines
  • Sulfate
  • Conductivity
  • Organic Carbon
  • Trihalomethanes
  • Turbidity

📊 Features of the Application

✔️ Manual parameter input for prediction
✔️ Natural language-based water analysis
✔️ Batch prediction using CSV upload
✔️ Feature importance & RFE analysis
✔️ Data visualization & insights dashboard
✔️ Water Quality Index (WQI) categorization
✔️ Interactive charts using Plotly


📊 Dataset

  • 📊 Real-world water quality dataset
  • 🧪 9 chemical parameters
  • 🏷️ Target: Potability (Safe / Unsafe)
  • 📌 Missing values handled using mean imputation

⚙️ Tech Stack

Layer Technology
Frontend Streamlit
Backend Python
ML Libraries Scikit-learn
Data Processing Pandas, NumPy
Visualization Plotly, Matplotlib, Seaborn
Model Persistence Pickle

📱 Application Preview

🏠 Manual Input & Prediction


💬 Natural Language Analysis


📁 Batch Analysis (CSV Upload)


📊 Results & Recommendations


🔄 Working Flow

  1. 📝 User inputs parameters / description / CSV
  2. ⚙️ Data preprocessing (scaling + cleaning)
  3. 🌲 Random Forest model predicts potability
  4. 📊 Probability and confidence score generated
  5. 📈 Results visualized using interactive charts
  6. 💡 Recommendations provided based on prediction

📈 Model Training Highlights

  • Compared multiple models (Logistic Regression, SVM, KNN, Decision Tree, Random Forest, etc.)
  • Selected Random Forest based on best performance
  • Applied GridSearchCV for hyperparameter tuning
  • Used Stratified Train-Test Split for balanced evaluation
  • Achieved strong classification performance

📌 Training & model pipeline implemented → :contentReference[oaicite:0]{index=0}


⚙️ Run Locally

git clone https://github.com/puniaiml/Water-potability-analysis.git
cd Water-potability-analysis
pip install -r requirements.txt
streamlit run app.py

About

Machine learning web app that predicts water safety using Random Forest based on 9 key quality parameters with interactive analytics.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors