Skip to content

saimtec/Data-Analysis-Dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Interactive Data Analysis Dashboard

A powerful, user-friendly web application for exploring and analyzing CSV data without writing code. Built with Streamlit and Python, this dashboard transforms raw data into actionable insights through interactive visualizations and statistical analysis.

Python Streamlit License

Features

  • Easy File Upload - Handles custom delimiters and encodings for robust CSV support
  • Statistical Summary - Automatic calculation of mean, median, standard deviation, and more
  • Missing Data Detection - Identify and handle missing values through various imputation methods
  • Multiple Visualizations
    • Histograms and Density Curves for distribution analysis
    • Box plots and Violin plots for outlier detection
    • Bar charts and Pie charts for categorical features
    • Scatter plots and Line plots for bivariate analysis
  • Correlation Analysis - Interactive heatmaps showing relationships between numeric variables
  • Outlier Detection - IQR-based method to identify and handle anomalies in your data
  • Data Cleaning - Remove missing values, duplicates, and perform advanced text cleaning
  • Export Options - Download processed data as CSV or Excel files

Quick Start

Prerequisites

  • Python 3.8 or higher
  • pip package manager

Installation

  1. Clone the repository:
git clone https://github.com/saimtec/Data-Analysis-Dashboard.git
cd Data-Analysis-Dashboard
  1. Install required packages:
pip install -r requirements.txt
  1. Run the application:
streamlit run app.py
  1. Open your browser and navigate to http://localhost:8501

Dependencies

  • streamlit - Web application framework
  • pandas - Data manipulation and analysis
  • numpy - Numerical computing
  • matplotlib - Data visualization
  • seaborn - Statistical data visualization
  • openpyxl - Excel file support

Usage

Upload Your Data

  1. Select your delimiter and encoding settings
  2. Click "Browse files" or drag and drop your CSV file
  3. The dashboard loads your data into memory

Explore Statistics

  • View summary statistics including count, mean, std, min, max
  • Group your data and apply custom aggregations
  • Filter data points using numeric or text-based conditions

Visualize Distributions

  • Select any numeric or categorical column from the dropdown
  • Choose from a wide variety of plotting types
  • Dynamically visualize relationships between features

Analyze Correlations

  • Interactive heatmap shows relationships between all numeric variables
  • Color-coded from negative to positive correlations
  • Table dynamically updates to display the strongest top correlations

Clean Data

  • Deal with missing data points, duplicates, and outliers
  • Text cleaning functions (lowercase, removing special characters)
  • Remove unneeded columns permanently or restore to the original dataset

Export

  • Download the extensively washed and transformed data down as a pristine CSV or formatted Excel sheet

Sample Data

The repository includes a sample dataset (Heart_Disease_Prediction.csv) with:

  • Patient demographics and health metrics
  • Missing values for testing data cleaning features
  • Multiple numeric and categorical variables
  • Perfect for exploring all dashboard capabilities

Use Cases

  • Data Scientists - Quick exploratory data analysis before modeling
  • Business Analysts - Generate insights from sales, customer, or operational data
  • Students - Learn data analysis concepts through interactive visualization
  • Researchers - Analyze survey results and experimental data
  • Anyone - Explore CSV data without programming knowledge

Project Structure

Data-Analysis-Dashboard/
│
├── app.py                              # Main Streamlit application
├── requirements.txt                    # Python dependencies
├── Heart_Disease_Prediction.csv        # Sample dataset
├── README.md                           # Project documentation
└── src/                                # Core logic modules
    ├── __init__.py
    ├── upload.py                       # File uploading logic
    ├── overview.py                     # Initial data profiling
    ├── cleaning.py                     # Missing values & outliers
    ├── analysis.py                     # Filtering & grouping
    ├── visualizations.py               # Charting functionality
    └── export.py                       # Downloading data

Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Contact

Have questions or suggestions? Feel free to open an issue or reach out!


Star this repository if you found it helpful!

About

A powerful Streamlit web app for interactive CSV data analysis with visualizations, statistical insights, correlation heatmaps, outlier detection, and data cleaning - no coding required.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages