AnalystLab Africa Week 2 - Feature Engineering & Data Preprocessing (Heart Disease Prediction)
# AnalystLab Africa — Semaine 2 : Feature Engineering & Prétraitement des Données
**Week 2: Feature Engineering & Data Preprocessing for Machine Learning**
Projet de stage en Data Science : transformation d'un jeu de données cliniques bruts
en un jeu de données **prêt pour le Machine Learning**, avec pipeline documenté.
*Data Science internship project: turning raw clinical data into an ML-ready dataset with a
fully documented preprocessing pipeline.*
---
## Contexte / Context
Ce projet traite le jeu de données **Heart Failure Prediction** (fedesoriano, Kaggle) —
918 patients, 11 caractéristiques cliniques + cible `HeartDisease` (présence/absence de
maladie cardiaque). L'objectif est de préparer les données pour entraîner un classifieur
binaire.
*This project uses the Heart Failure Prediction dataset (918 patients, 11 clinical features +
target `HeartDisease`). Goal: prepare the data to train a binary classifier.*
**Jeu de données source / Source dataset** :
kaggle.com
---
## Contenu du dépôt / Repository contents
```
Week2/
├── README.md
├── run_notebook.sh # Lance Jupyter (venv) / launch Jupyter
├── run_app.sh # Lance l'app de prédiction Streamlit
├── app.py # Interface de prédiction du risque cardiaque
├── data/
│ ├── raw/heart.csv # Jeu brut original / raw dataset
│ ├── cleaned/heart_cleaned.csv # Jeu nettoyé (avant encodage) / cleaned
│ └── ml_ready/heart_ml_ready.csv # Jeu prêt pour le ML / ML-ready dataset
├── models/
│ ├── heart_model.joblib # Random Forest entraîné (Accuracy 0.880)
│ └── heart_preprocessor.joblib # Médianes, bornes IQR, colonnes one-hot
├── notebooks/
│ └── week2_feature_engineering.ipynb # Notebook principal (Parts 1-5)
├── reports/
│ ├── rapport_comprehension_metier.md # Rapport de compréhension métier / Business repor …