Révisions

Algorithmique / Programmation

Steven Golovkine

05 sept. 2025

logo

Philosophie du cours

Liberté de choix

Ce cours n’impose aucun langage spécifique !

Vous êtes libres de choisir :

  • R, Python, Julia, ou même SAS ou C++.

  • Le langage qui vous convient le mieux.

Objectif commun : Code lisible, compréhensible et réutilisable.

Plan de la présentation


  1. Bonnes pratiques universelles

  2. Comment choisir ?

Bonnes pratiques universelles

Principes fondamentaux


  • Code lisible : les autres (et vous dans 6 mois !) doivent comprendre

  • Documentation : commentaires clairs et concis

  • Structure : organisation logique des fichiers et fonctions

  • Reproductibilité : mêmes données → mêmes résultats

  • Gestion des versions : Git pour suivre les modifications

Exemple : Code mal écrit vs. bien écrit


❌ Code difficile à comprendre :

import pandas as pd
d=pd.read_csv('data.csv')
r=d.groupby('A').mean()['B']
print(r)

✅ Code clair et documenté :

import pandas as pd

# Chargement des données de ventes
sales_data = pd.read_csv('monthly_sales.csv')

# Calcul de la moyenne des ventes par région
average_sales_by_region = sales_data.groupby('region').mean()['sales_amount']

print(f"Ventes moyennes par région : {average_sales_by_region}")

Structure de projet recommandée


mon_projet/
├── data/           # Données brutes et nettoyées
├── scripts/        # Scripts d'analyse
├── functions/      # Fonctions réutilisables
├── results/        # Graphiques, tableaux, documents
├── docs/           # Documentation
└── README.md       # Description du projet

Avantages :

  • Organisation claire

  • Facilite la collaboration

  • Projet reproductible

Comment choisir votre langage ?

Critères de décision


  • Votre expérience : Quel langage connaissez-vous déjà ?

  • Type de projet : Statistiques pures vs. ML vs. applications web

  • Performance : Avez-vous besoin de calculs très rapides ?

  • Écosystème : Quels packages/bibliothèques vous faut-il ?

  • Équipe : Quel langage utilise votre groupe/entreprise ?

Apprentissage recommandé


  1. Maîtrisez un langage à fond plutôt que plusieurs superficiellement

  2. Apprenez les concepts (statistiques, ML) avant la syntaxe

  3. Pratiquez régulièrement : projets personnels

  4. Lisez du code des autres : GitHub, Stack Overflow

  5. Suivez les bonnes pratiques dès le début

Ressources d’apprentissage


Pour tous les langages :

  • Learn X in Y minutes (guides rapides)

  • Stack Overflow (questions/réponses)

  • Documentation officielle

L’important c’est…

  1. Comprendre les concepts mathématiques et statistiques

  2. Écrire du code lisible et documenté

  3. Reproduire ses analyses

  4. Continuer d’apprendre et s’adapter

Le langage de programmation n’est qu’un outil pour exprimer vos idées !