OUJOOD.COM
La Series : une colonne de données indexées
Une Series est la structure la plus simple de Pandas. C'est une liste de valeurs à laquelle Pandas ajoute automatiquement un index — c'est-à-dire une étiquette pour chaque valeur. Par défaut, cet index est numérique et commence à 0.
Vous pouvez créer une Series depuis une liste Python ordinaire :
import pandas as pd
# Créer une Series depuis une liste
temperatures = pd.Series([22, 19, 25, 17, 30])
print(temperatures)
Ce code affiche :
0 22 1 19 2 25 3 17 4 30 dtype: int64
À gauche, c'est l'index (0, 1, 2...). À droite, les valeurs. En bas, Pandas indique le type de données — ici int64, des entiers sur 64 bits.
L'index n'est pas forcément numérique. Vous pouvez définir des étiquettes personnalisées, ce qui rend les données beaucoup plus lisibles :
import pandas as pd # Series avec un index personnalisé temperatures = pd.Series( [22, 19, 25, 17, 30], index=["lundi", "mardi", "mercredi", "jeudi", "vendredi"] ) print(temperatures) # Accéder à la valeur du mercredi print(temperatures["mercredi"]) # 25
Le DataFrame : un tableau à plusieurs colonnes
Un DataFrame est ce que vous utiliserez dans 95 % des cas avec Pandas. C'est un tableau à deux dimensions : des lignes et des colonnes, chacune avec un nom. Vous pouvez le voir comme plusieurs Series partageant le même index.
La façon la plus courante de créer un DataFrame est de passer un dictionnaire Python, où chaque clé devient un nom de colonne et chaque valeur est la liste des données de cette colonne :
import pandas as pd
# Créer un DataFrame depuis un dictionnaire
data = {
"prénom": ["Alice", "Bob", "Clara", "David"],
"âge": [28, 34, 22, 45],
"ville": ["Paris", "Lyon", "Marseille", "Bordeaux"],
"score": [88, 74, 95, 61]
}
df = pd.DataFrame(data)
print(df)
Résultat affiché dans le terminal :
prénom âge ville score 0 Alice 28 Paris 88 1 Bob 34 Lyon 74 2 Clara 22 Marseille 95 3 David 45 Bordeaux 61
Pandas a créé automatiquement un index numérique (0, 1, 2, 3) pour les lignes. Les noms de colonnes viennent directement des clés du dictionnaire. Chaque colonne peut avoir un type différent : texte, entier, décimal, date, etc.
Accéder aux informations de base d'un DataFrame
Trois attributs sont utiles dès le départ pour inspecter un DataFrame sans afficher toutes ses données :
import pandas as pd
data = {
"prénom": ["Alice", "Bob", "Clara", "David"],
"âge": [28, 34, 22, 45],
"ville": ["Paris", "Lyon", "Marseille", "Bordeaux"]
}
df = pd.DataFrame(data)
# Dimensions : (nombre de lignes, nombre de colonnes)
print(df.shape) # (4, 3)
# Noms des colonnes
print(df.columns) # Index(['prénom', 'âge', 'ville'], dtype='object')
# Type de chaque colonne
print(df.dtypes)
# prénom object
# âge int64
# ville object
df.shape retourne un tuple (lignes, colonnes) — pratique pour vérifier rapidement la taille d'un jeu de données. df.columns liste les noms de colonnes. df.dtypes indique le type de chaque colonne : object pour le texte, int64 pour les entiers, float64 pour les décimaux.
Différence concrète entre Series et DataFrame
Une Series, c'est une seule colonne. Un DataFrame, c'est un ensemble de colonnes. Quand vous extrayez une colonne d'un DataFrame, vous obtenez une Series :
import pandas as pd
data = {
"prénom": ["Alice", "Bob", "Clara"],
"âge": [28, 34, 22]
}
df = pd.DataFrame(data)
# Extraire la colonne "âge" → retourne une Series
ages = df["âge"]
print(type(ages)) # <class 'pandas.core.series.Series'>
print(ages)
C'est une distinction importante : df["âge"] retourne une Series, tandis que df[["âge"]] (avec deux crochets) retourne un DataFrame à une seule colonne. Le comportement est différent selon les opérations que vous ferez ensuite.
Pour la suite du cours, vous travaillerez principalement avec des DataFrames. La Series apparaîtra naturellement dès que vous manipulez une colonne isolée.
Par carabde | Mis à jour le 26 avril 2026