← Comprendre les Réseaux de Neurones
📊 Phase 1 · 1 jour

Manipuler les données

🎯 Ce que tu retiens : Voir les données

Objectif

Apprendre à charger et visualiser des données avec Python.

📖 Vocabulaire - français / anglais

  • jeu de données ↔ *dataset*
  • caractéristique ↔ *feature* (une colonne de mesures)
  • étiquette ↔ *label* (la réponse : l'espèce)

Code de départ

import pandas as pd
import matplotlib.pyplot as plt

# L'ordre officiel des colonnes du fichier iris.data est :
# sépale, sépale, PUIS pétale, pétale. (Les inverser fausse tout en silence.)
noms = ["longueur_sepale", "largeur_sepale",
        "longueur_petale", "largeur_petale", "espece"]

url = "https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data"
try:
    df = pd.read_csv(url, names=noms)
except Exception:
    # Filet de sécurité si l'URL ne répond pas : Iris est livré avec scikit-learn.
    from sklearn.datasets import load_iris
    data = load_iris()
    df = pd.DataFrame(data.data, columns=noms[:4])
    df["espece"] = [data.target_names[t] for t in data.target]

print("Premières lignes :")
print(df.head())
print("\nStatistiques :")
print(df.describe())

Exercice 1.1 - Explorer

✍️ À toi de jouer

Exécute le code ci-dessus, puis réponds :

  1. Quelle est la longueur moyenne d'un pétale ?
  2. Quelle est la plus grande largeur de pétale ?
  3. Combien y a-t-il de fleurs au total ?
Voir la réponse
  1. Longueur moyenne du pétale : environ 3.76 cm (colonne longueur_petale, ligne mean de describe()).
  2. Plus grande largeur de pétale : 2.5 cm (ligne max).
  3. Total : 150 fleurs (ligne count).

Si tu obtiens plutôt 5.84 pour la « longueur du pétale », c'est le signe que tes colonnes sont dans le mauvais ordre : tu lis en réalité le sépale. D'où l'importance de l'ordre des noms.

Exercice 1.2 - Le graphique

✍️ À toi de jouer

Colore les points selon l'espèce et affiche le nuage :

plt.scatter(df["longueur_petale"], df["largeur_petale"],
            c=df["espece"].astype("category").cat.codes)
plt.xlabel("Longueur du pétale")
plt.ylabel("Largeur du pétale")
plt.title("Les fleurs Iris")
plt.show()
  1. Vois-tu trois groupes distincts ?
  2. Quel groupe est le plus isolé ?
  3. Quels deux groupes se touchent ?
Voir la réponse
  1. Oui, trois groupes se dessinent.
  2. Setosa (en bas à gauche) est parfaitement isolé.
  3. Versicolor et Virginica se chevauchent légèrement au milieu.

La leçon : c'est pour ça que Setosa est facile à classifier. Versicolor contre Virginica, c'est le vrai défi - exactement là où ta règle de la Phase 0 se trompait.