Bonjour à tous,
J'ai besoin de votre aide pour effectuer une opération sur une DataFrame que je j'ai du mal à faire moi-même. Je m'explique: le code qui suit définit un tableau contenant des achats.
Voici ce que cela donne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 import pandas as pd import numpy as np a = "pommes" b = "poires" c = "citrons" listes = [[a,a,b,b,c,c], [2,1,4,3,4,6]] s = np.array(listes) df = pd.DataFrame(s) df = df.transpose() df.rename(columns={0:"produit",1:"nombre"}, inplace=True) print(df)
Ce que j'aimerais faire, c'est obtenir un tableau qui a les mêmes noms de colonnes, qui a une seule ligne par espèce de fruit achetée, et où la colonne "nombre" cette fois-ci montre le nombre total de pommes, de poires et de citrons achetés. Voici ce que cela devrait donner:
Encore un mot à propos de ce que j'ai essayé de faire moi-même. On pourrait bien sûr parcourir le tableau avec une boucle pour récupérer tous ce dont on a besoin pour définir le tableau que je voulais obtenir, mais d'après ce que j'ai lu l'utilisation de boucles sur une DataFrame est à proscrire.
Je me suis aussi dit qu'il pourrait y avoir un rapport entre ce que je veux faire et la méthode des tableaux croisés dynamiques, mais je ne maîtrise pas cette notion-là.
Je vous remercie d'avance pour votre aide.
Partager