Exercices Machine Learning Explorer un DataFrame pandas
🎉

Bravo!

Débutant 🧠 Fondamentaux 10 XP 0 personnes ont réussi

Explorer un DataFrame pandas

En data science, la premiere chose que tu fais avec un nouveau dataset c'est l'explorer. Combien de lignes ? Quelles colonnes ? Quels types de donnees ? Pandas est LA bibliotheque Python pour ca. Un DataFrame, c'est ton tableur programmable : des lignes (les observations) et des colonnes (les variables).

Pour créer un DataFrame, tu passes un dictionnaire a pd.DataFrame(). Les clés deviennent les noms de colonnes, et les valeurs (des listes) deviennent les données.

Quelques propriétés utiles :
df.shape renvoie un tuple (nombre_lignes, nombre_colonnes)
df.dtypes renvoie le type de chaque colonne
df.describe() renvoie des statistiques pour les colonnes numeriques
df.columns renvoie la liste des noms de colonnes

Écris une fonction explorer_dataframe(df) qui prend un DataFrame pandas et renvoie un dictionnaire avec :
'nb_lignes' : le nombre de lignes
'nb_colonnes' : le nombre de colonnes
'colonnes' : la liste des noms de colonnes
'types' : un dictionnaire colonne -> type (en string)

Exemple :

import pandas as pd
df = pd.DataFrame({'age': [25, 30], 'nom': ['Alice', 'Bob']})
explorer_dataframe(df)
# renvoie {'nb_lignes': 2, 'nb_colonnes': 2, 'colonnes': ['age', 'nom'], 'types': {'age': 'int64', 'nom': 'object'}}

Tests (4/4)

DataFrame simple
import pandas as pd
df = pd.DataFrame({'age': [25, 30], 'nom': ['Alice', 'Bob']})
result = explorer_dataframe(df)
assert result['nb_lignes'] == 2
assert result['nb_colonnes'] == 2
Noms de colonnes
import pandas as pd
df = pd.DataFrame({'x': [1], 'y': [2], 'z': [3]})
result = explorer_dataframe(df)
assert result['colonnes'] == ['x', 'y', 'z']
Types corrects
import pandas as pd
df = pd.DataFrame({'a': [1.0, 2.0], 'b': ['x', 'y']})
result = explorer_dataframe(df)
assert result['types']['a'] == 'float64'
assert result['types']['b'] == 'object'
DataFrame vide
import pandas as pd
df = pd.DataFrame()
result = explorer_dataframe(df)
assert result['nb_lignes'] == 0
assert result['nb_colonnes'] == 0

Indices (3 disponibles)

solution.py