首页  >  文章  >  后端开发  >  如何将 Pandas GroupBy 结果转换为列表字典?

如何将 Pandas GroupBy 结果转换为列表字典?

Linda Hamilton
Linda Hamilton原创
2024-11-02 16:26:02231浏览

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

将 GroupBy 结果转换为列表字典

为了从 Excel 工作表中提取数据并对其进行分组,通常使用 groupby pandas库的功能。然而,当所需的输出是一个字典,其中键对应于组值并且值是对应元素的列表时,传统方法可能不够。

为了实现这一特定要求,一种解决方案是利用 apply 和to_dict 函数。 apply 函数允许将函数应用到每个组,在本例中,将 Column3 转换为列表。然后 to_dict 函数将结果转换为字典。以下代码演示了这种方法:

<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>

此代码将生成所需的输出:

{0: [1],
1: [2, 3, 5],
2: [1, 2],
3: [4, 5],
4: [1],
5: [1, 2, 3]}

或者,更紧凑的解决方案是使用字典理解:

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

这种方法也能产生相同的期望输出,提供简洁而高效的实现。

以上是如何将 Pandas GroupBy 结果转换为列表字典?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn