Exercice 61 / 100

Pandas — Series

Crée et manipule des Series Pandas

Une Series est l'objet 1D de pandas : un vecteur indexé. C'est comme une colonne de DataFrame, ou un dict avec un ordre.

Création

pd.Series([10, 20, 30]) # index par défaut 0,1,2 pd.Series([10, 20, 30, 40], index=['a','b','c','d']) pd.Series({'Alice': 15, 'Bob': 12, 'Charlie': 18}) # depuis un dict pd.Series(5, index=['a','b','c']) # même valeur partout

Chaque Series a

s.values → les données (array NumPy) s.index → les étiquettes s.dtype → type des données s.name → nom optionnel (devient le nom de colonne en DataFrame)
Une Series attache une étiquette à chaque valeur : c'est cet index, choisi et non subi, qui permet d'écrire s['b'] au lieu de compter les positions

Accès

s['b']
accès par label
s.iloc[1] accès par position (comme une liste) s.loc['b':'d'] slice par labels (INCLUSIF — différent de iloc)
s[s > 10]
masque booléen

s['a':'c'] avec loc inclut 'c' (différent du slicing Python classique).

Opérations

Mêmes opérations vectorisées que NumPy :

s + 10, s * 2, s ** 2, np.sqrt(s) s.sum(), s.mean(), s.std(), s.median(), s.max() s.describe() résumé stats s.value_counts() compte des valeurs distinctes

Exemple complet

s = pd.Series([10, 20, 30, 40], index=['a','b','c','d']) print(s) # a 10 # b 20 # c 30 # d 40
print('Valeur b:', s['b']) # 20 print('Somme:', s.sum()) # 100
notes = pd.Series({'Alice': 15, 'Bob': 12, 'Charlie': 18}) meilleures = notes[notes > 14] # garde Alice + Charlie

Une Series = une colonne. Un DataFrame = un dict de Series partageant le même index.

exercise.py

Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →