Pandas : créer un histogramme pour chaque colonne dans DataFrame
Vous pouvez utiliser la syntaxe de base suivante pour créer un histogramme pour chaque colonne d’un DataFrame pandas :
import pandas as pd import matplotlib.pyplot as plt #define number of subplots fig, axis = plt.subplots(1, 3) #create histogram for each column in DataFrame df.hist(ax=axis)
Cet exemple particulier utilise la fonction subplots() pour spécifier qu’il y a 3 colonnes dans le DataFrame, puis crée un histogramme pour chaque colonne.
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : créer un histogramme pour chaque colonne dans l’histogramme Pandas
Supposons que nous ayons le DataFrame pandas suivant qui contient trois colonnes :
import pandas as pd import numpy as np #make this example reproducible np.random.seed(1) #create DataFrame df = pd.DataFrame({'points': np.random.normal(loc=20, scale=2, size=300), 'assists': np.random.normal(loc=14, scale=3, size=300), 'rebounds': np.random.normal(loc=12, scale=1, size=300)}) #view head of DataFrame print(df.head()) points assists rebounds 0 23.248691 20.197350 10.927036 1 18.776487 9.586529 12.495159 2 18.943656 11.509484 11.047938 3 17.854063 11.358267 11.481854 4 21.730815 13.162707 10.538596
Nous pouvons utiliser la syntaxe suivante pour créer un histogramme pour chacune des trois colonnes du DataFrame :
import matplotlib.pyplot as plt
#define format for subplots (1 row and 3 columns)
fig, axis = plt.subplots(1, 3)
#create histogram for each column in DataFrame
df.hist(ax=axis)
Le résultat est une grille avec une ligne et trois colonnes qui affiche un histogramme pour chaque colonne du DataFrame.
Si vous le souhaitez, vous pouvez utiliser l’argument figsize pour modifier la taille des histogrammes ainsi que les arguments edgecolor et grid pour améliorer l’apparence des histogrammes :
import matplotlib.pyplot as plt
#define format for subplots
fig, axis = plt.subplots(1, 3, figsize=(8,3))
#create histogram for each column in DataFrame
df.hist(ax=axis, edgecolor='black', grid=False)
N’hésitez pas à jouer avec les arguments de la fonction subplots() pour définir le format et la taille exacts des histogrammes.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans les pandas :
Comment modifier le nombre de bacs utilisés dans l’histogramme Pandas
Comment modifier la plage de l’axe X dans l’histogramme Pandas
Comment tracer des histogrammes par groupe chez Pandas