gpt4 book ai didi

python - 将多列上的 groupby 的结果转换为字典列表

转载 作者:行者123 更新时间:2023-12-04 11:22:59 27 4
gpt4 key购买 nike

我正在尝试将结果从 Pandas groupby 函数转换为一个字典数组,然后可以在前端的 recharts 中使用它。
代码运行:

data.groupby(['date','board_type'])['count'].sum()
groupby 的输出:
date        board_type
2021-01-02 B1 11
B2 105
2021-01-03 B1 30
B2 73
2021-01-04 B1 188
转换后的预期输出:
[
{
date: 2021-01-02, B1: 11, B2: 105
},
{
date: 2021-01-03, B1: 30, B2: 73
},
{
date: 2021-01-04, B1: 188, B2: 0
}
]
我尝试使用 .to_dict 但这似乎不起作用。请建议如何实现这一点。

最佳答案

你很近。关键是将该 groupby 的结果转换回带有 date 的 DataFrame作为索引和 B1B2作为列(它是一个系列)。这可以使用 unstack 来完成.然后你可以使用 DataFrame 的 to_dict 得到你想要的东西这边走:

data.groupby(['date', 'board_type'])['count'].sum().unstack(fill_value=0).reset_index().to_dict(orient='records')
输出:
[{'date': '2021-01-02', 'B1': 11, 'B2': 105},
{'date': '2021-01-03', 'B1': 30, 'B2': 73},
{'date': '2021-01-04', 'B1': 188, 'B2': 0}]

关于python - 将多列上的 groupby 的结果转换为字典列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67548390/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com