Comment découper le DataFrame Pandas en morceaux



Vous pouvez utiliser la syntaxe de base suivante pour découper un DataFrame pandas en morceaux plus petits :

#specify number of rows in each chunk
n=3

#split DataFrame into chunks
list_df = [df[i:i+n] for i in range(0,len(df),n)]

Vous pouvez ensuite accéder à chaque morceau en utilisant la syntaxe suivante :

#access first chunk
list_df[0]

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : diviser le DataFrame Pandas en morceaux

Supposons que nous ayons le DataFrame pandas suivant avec neuf lignes contenant des informations sur divers joueurs de basket-ball :

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'],
                   'points': [18, 22, 19, 14, 14, 11, 20, 28, 23],
                   'assists': [5, 7, 7, 9, 12, 9, 9, 4, 11],
                   'rebounds': [11, 8, 10, 6, 6, 5, 9, 12, 10]})

#view DataFrame
print(df)

  team  points  assists  rebounds
0    A      18        5        11
1    B      22        7         8
2    C      19        7        10
3    D      14        9         6
4    E      14       12         6
5    F      11        9         5
6    G      20        9         9
7    H      28        4        12
8    I      23       11        10

Nous pouvons utiliser la syntaxe suivante pour diviser le DataFrame en morceaux où chaque morceau comporte 3 lignes :

#specify number of rows in each chunk
n=3

#split DataFrame into chunks
list_df = [df[i:i+n] for i in range(0,len(df),n)]

Nous pouvons alors utiliser la syntaxe suivante pour accéder à chaque morceau :

#view first chunk
print(list_df[0])

  team  points  assists  rebounds
0    A      18        5        11
1    B      22        7         8
2    C      19        7        10

#view second chunk
print(list_df[1])

  team  points  assists  rebounds
3    D      14        9         6
4    E      14       12         6
5    F      11        9         5

#view third chunk
print(list_df[2])

  team  points  assists  rebounds
6    G      20        9         9
7    H      28        4        12
8    I      23       11        10

Notez que chaque morceau contient trois lignes, comme nous l’avons spécifié.

Notez que dans cet exemple, nous avons utilisé un DataFrame avec seulement neuf lignes comme exemple simple.

En pratique, vous travaillerez probablement avec un DataFrame comportant des centaines de milliers, voire des millions de lignes.

Vous pouvez utiliser la même syntaxe que celle utilisée dans cet exemple pour diviser votre DataFrame en morceaux de tailles spécifiques.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans les pandas :

Pandas : Comment diviser un DataFrame par valeur de colonne
Pandas : Comment diviser une colonne de chaîne en plusieurs colonnes
Pandas : Comment diviser une colonne de listes en plusieurs colonnes

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *