An open API service indexing awesome lists of open source software.

https://github.com/drisskhattabi6/data-analysis-and-ml-app

A Python desktop application using CustomTkinter for data analysis and machine learning.
https://github.com/drisskhattabi6/data-analysis-and-ml-app

custom-tkinter data-analysis data-processing data-visualization desktop-application machine-learning machine-learning-models machine-learning-pipeline tkinter

Last synced: 7 months ago
JSON representation

A Python desktop application using CustomTkinter for data analysis and machine learning.

Awesome Lists containing this project

README

          

# Data Analysis & Machine Learning Desktop Application

This project is a desktop application developed in Python using CustomTkinter for data analysis and implementation of Machine Learning algorithms. The application provides a user-friendly interface for students and users to analyze both qualitative and quantitative datasets, utilizing various Machine Learning algorithms.
This project was completed as an end-of-module project for the Advanced Programming (Python) course at the University of Abdelmalek Essaâdi Faculty of Sciences and Techniques Tangier.

## Table of Contents

1. [Introduction](#introduction)
2. [Features](#features)
3. [Installation](#installation)
4. [Usage](#usage)
5. [Solutions Provided](#solutions-provided)
6. [Documentation and Tutorials](#documentation-and-tutorials)
7. [Conclusion](#conclusion)
8. [Contributors](#contributors)

## Introduction

This application aims to provide a practical experience in programming and machine learning. It allows the analysis of datasets using multiple Machine Learning algorithms such as Decision Trees, Naive Bayes, Random Forest, and K-Nearest Neighbors.

## Features

- **Intuitive User Interface**: Developed with Tkinter for efficient data manipulation.
- **Data Representation**: Clear and explicit graphical representation of data.
- **Data Management**: Includes data preparation and transformation features like cleaning, handling missing values, and feature scaling.
- **Machine Learning Algorithms**: Implementation of various algorithms allowing users to choose the most suitable model.
- **Model Validation**: Robust evaluation methods to ensure reliable performance.
- **Results Visualization**: Tools like charts and tables for clear interpretation of algorithm performance.
- **Export Results**: Ability to export analysis results, trained models, and visualizations.
- **Comprehensive Documentation**: Includes detailed code documentation and tutorials.

## Installation

1. Clone the repository:
```sh
git clone https://github.com/drisskhattabi6/Data-Analysis-And-ML-App.git
```
2. Navigate to the project directory:
```sh
cd Data-Analysis-And-ML-App
```
3. Install the required dependencies:
```sh
pip install -r requirements.txt
```

## Usage

1. Run the application:
```sh
python app.py
```
2. Use the intuitive interface to import datasets, visualize data, and apply machine learning algorithms.
3. Follow the on-screen instructions to navigate through the different functionalities of the application.

## Solutions Provided

### Home Interface

The home interface serves as a central dashboard, providing an overview of the application and quick access buttons to different sections like data import, visualization, data processing, machine learning, and documentation.

![main-interface](screenshots/1.PNG)

### Data Import

This feature allows users to import datasets from their computer or create new datasets. It also includes functionalities to define the target column and its type for classification or regression problems.

![Data-Import](screenshots/2.PNG)

### Initial Data Visualization

Provides initial exploratory data analysis through illustrative charts, helping users understand their target variable's nature.

![Data Visualization](screenshots/data-vis.png)

### Data Processing

Interactive platform for data preparation, including feature selection, handling missing values, data encoding, and feature scaling.

![Data Processing](screenshots/3.PNG)

### Machine Learning Algorithms and Model Validation

Users can apply various machine learning algorithms and validate model performance through detailed metrics like accuracy, precision, recall, and F1 score. The interface also allows model selection and visualization of results.
#### Classification problems
![Classification problems](screenshots/4.PNG)

#### Classification Result Visualization
![Classification Result Vis](screenshots/5.PNG)

#### Regression problems
![Regression problems](screenshots/ml-regression.png)

#### Regression Result Visualization
![Regression vis](screenshots/regression-results.png)

### Documentation and Tutorials

Comprehensive documentation and tutorial videos are available to guide users through the application functionalities and machine learning concepts.

![watch](screenshots/watch.png)

![doc](screenshots/doc.png)

## Conclusion

This project successfully delivers a complete and user-friendly application for data analysis and machine learning, providing valuable hands-on experience for students and users in the field of data science.

## Contributors

- **[Khattabi Idriss](https://github.com/drisskhattabi6)**
- **[Sabbahi Mohamed Amine](https://github.com/amine-sabbahi)**
- **[Boufarhi Ayman](https://github.com/aymanboufarhi)**

---

**Abdelmalek Essaadi University** Faculty of Sciences and Techniques Tangier
- Department : Computer Engineering
- Master : AI & DS
- Module : Advanced Programming Language (Python)
- Framed by : Pr. Sanae KHALI ISSA