Exercice 64 / 100

Pandas — Info & Describe

ConsigneExplore un DataFrame avec info(), describe(), value_counts()

📖 Cours

Avant de modéliser ou nettoyer, on explore. Pandas a quelques méthodes incontournables pour avoir un aperçu rapide.

Apperçu général

df.head(n) n premières lignes (5 par défaut)df.tail(n) n dernièresdf.sample(n) n lignes aléatoires (utile pour ne pas biaiser le coup d'œil)df.shape (lignes, colonnes)

df.info() : structure et NaN

Affiche

- nb de lignes/colonnes- nom et type de chaque colonne- nombre de valeurs NON-NULLES par colonne- mémoire utilisée

C'est le 1er coup d'œil indispensable sur un dataset.

df.describe() : stats descriptives

Pour les colonnes numériques uniquement (par défaut) :

count, mean, std, min, 25%, 50%, 75%, max
df.describe()df.describe(include='all') # inclut object/categorydf.describe(include=['object']) # uniquement les colonnes texte

Pour une colonne texte :

count, unique, top, freq

Détecter les NaN

df.isnull() DataFrame de booléens (True = NaN)df.isnull().sum() nb de NaN par colonne (TRÈS utilisé)df.isnull().any() True si au moins un NaN par colonnedf.notnull() inversedf.isnull().sum().sum() nb total de NaN dans tout le DataFrame

df['col'].value_counts() : compter les modalités

df['produit'].value_counts() absolu, trié décroissantdf['produit'].value_counts(normalize=True) en pourcentagesdf['produit'].value_counts().head(10) top 10df['produit'].nunique() nombre de valeurs distinctesdf['produit'].unique() array des valeurs distinctes

Exemple complet

df = pd.DataFrame({ 'produit': ['A', 'B', 'A', 'C', 'B', 'A', 'C', 'B'], 'prix': [10, 25, 10, 15, 25, 10, 15, 25], 'note': [4.5, 3.8, 4.2, np.nan, 4.0, 4.8, 3.5, np.nan]})
df.describe() # stats numériquesdf.isnull().sum() # nb de NaN par colonnedf['produit'].value_counts() # A:3, B:3, C:2
Le premier coup d'œil sur un jeu de données, toujours dans cet ordre : quelques lignes pour voir, la structure et les types, les statistiques, puis le compte des valeurs manquantes
Le premier coup d'œil sur un jeu de données, toujours dans cet ordre : quelques lignes pour voir, la structure et les types, les statistiques, puis le compte des valeurs manquantes

Workflow eda : .head() → .info() → .describe() → .isnull().sum() → .value_counts() sur les catégorielles. Sur un nouveau dataset, c'est toujours par là qu'on commence.

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