Maison > développement back-end > Tutoriel Python > Comment convertir les résultats Pandas GroupBy en un dictionnaire de listes ?

Comment convertir les résultats Pandas GroupBy en un dictionnaire de listes ?

Linda Hamilton
Libérer: 2024-11-02 16:26:02
original
351 Les gens l'ont consulté

How to Convert Pandas GroupBy Results into a Dictionary of Lists?

Conversion des résultats GroupBy en dictionnaire de listes

Afin d'extraire et de regrouper des données à partir d'une feuille Excel, il est courant d'utiliser le groupby fonction de la bibliothèque pandas. Cependant, lorsque le résultat souhaité est un dictionnaire dans lequel les clés correspondent aux valeurs de groupe et les valeurs sont des listes d'éléments correspondants, l'approche conventionnelle peut ne pas suffire.

Pour répondre à cette exigence spécifique, une solution consiste à utiliser les méthodes apply et fonctions to_dict. La fonction apply permet d'appliquer une fonction à chaque groupe, dans ce cas, de convertir Column3 en liste. La fonction to_dict convertit ensuite le résultat en dictionnaire. Le code suivant illustre cette approche :

<code class="python">import pandas as pd

excel = pd.read_excel(r"e:\test_data.xlsx", sheetname='mySheet', parse_cols'A,C')
result = excel.groupby('Column1')['Column3'].apply(list).to_dict()</code>
Copier après la connexion

Ce code générera le résultat souhaité :

{0: [1],
1: [2, 3, 5],
2: [1, 2],
3: [4, 5],
4: [1],
5: [1, 2, 3]}
Copier après la connexion

Alternativement, une solution plus compacte consiste à utiliser une compréhension de dictionnaire :

<code class="python">result = {k: list(v) for k, v in excel.groupby('Column1')['Column3']}</code>
Copier après la connexion

Cette approche produit également le même résultat souhaité, fournissant une mise en œuvre concise et efficace.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal