Skip to content

ilearncoding1/Projet_Analyse_Donnees_Smartphones

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

📱 Projet d’Analyse des Données Smartphones

Application de data science pour explorer, nettoyer et modéliser les prix de smartphones, avec une interface interactive Streamlit pour tester des prédictions en direct.


🎯 Objectifs du projet

  • CrĂ©er un dataset de smartphones (avec quelques anomalies volontairement ajoutĂ©es)
  • Effectuer l’exploration et le prĂ©traitement des donnĂ©es
  • Visualiser les donnĂ©es (distribution, corrĂ©lation, PCA, t-SNE)
  • EntraĂ®ner un modèle de rĂ©gression (Arbre de DĂ©cision)
  • PrĂ©dire le prix d’un smartphone Ă  partir de ses caractĂ©ristiques

đź§± Structure du projet

Projet_Analyse_Donnees_Smartphones/
├── data/
│   └── smartphones.csv
└── src/
    ├── app.py
    ├── modeling.py
    ├── preprocessing.py
    └── scraping.py

⚙️ Prérequis

  • Python 3.9+ (recommandĂ©)
  • pip

Dépendances Python

pip install pandas numpy matplotlib seaborn scikit-learn streamlit

🚀 Lancer le projet

1) Générer / régénérer le dataset

python src/scraping.py

2) Exécuter l’analyse et la visualisation hors interface

python src/preprocessing.py
python src/modeling.py

3) Lancer l’application Streamlit

streamlit run src/app.py

🧠 Fonctionnalités de l’application

Dans la barre latérale Streamlit, vous pouvez naviguer entre :

  1. Exploration & Nettoyage

    • Distribution des prix
    • Heatmap des corrĂ©lations
  2. Réduction Dimensionnelle

    • Projection PCA (2D)
    • Visualisation t-SNE (2D)
  3. Analyse de l’Arbre

    • Importance des variables
    • Visualisation de l’arbre de dĂ©cision
  4. Prédiction en Direct

    • Saisie des caractĂ©ristiques d’un smartphone
    • Estimation automatique du prix en DH

📊 Variables utilisées

  • Brand : marque
  • Model : modèle
  • Price_DH : prix en dirhams
  • RAM_GB : mĂ©moire RAM
  • Storage_GB : stockage
  • Screen_Size_Inch : taille Ă©cran
  • Battery_mAh : capacitĂ© batterie

🧹 Nettoyage des données

Le pipeline inclut notamment :

  • Imputation des valeurs manquantes (mĂ©diane / moyenne)
  • Suppression d’anomalies extrĂŞmes de prix
  • Encodage one-hot de la marque
  • Standardisation des variables numĂ©riques
  • Transformation logarithmique de la cible pour stabiliser la rĂ©gression

🔍 Modèle ML

  • Algorithme : DecisionTreeRegressor
  • Objectif : prĂ©dire le prix smartphone
  • Sortie finale : conversion inverse du log pour afficher un prix rĂ©el en DH

🛠️ Améliorations possibles

  • Évaluation plus complète (MAE, RMSE, validation croisĂ©e)
  • Comparaison avec d’autres modèles (Random Forest, XGBoost, etc.)
  • Sauvegarde/versioning du modèle
  • DĂ©ploiement web (Streamlit Cloud, Docker)

👤 Auteur

Projet réalisé dans le cadre d’un exercice d’analyse de données et de modélisation ML.

About

📱 Analyse et prédiction des prix de smartphones avec Python, scikit-learn & Streamlit. Exploration des données, visualisation (PCA, t-SNE), modélisation Decision Tree et prédiction interactive en direct.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages