Python pandas GroupBy:将DataFrame转换为指定字典格式的方法
解决方案:将DataFrame转换为指定字典格式
嘿,我来帮你快速搞定这个转换需求!基于你已经得到的ot DataFrame,只需要几行代码就能得到你想要的字典结构。
具体步骤与代码
根据你的期望输出,我们需要提取A、B、D、E这四列(跳过C列),把dayname作为字典的键,对应列的整数值组成列表作为值。执行以下代码即可:
# 定义需要保留的目标列 target_cols = ['A', 'B', 'D', 'E'] # 完成转换:设置索引→筛选列→转整数列表→生成字典 result_dict = ot.set_index('dayname')[target_cols].apply( lambda row: row.astype(int).tolist(), axis=1 ).to_dict() print(result_dict)
代码逻辑拆解
set_index('dayname'):把dayname列设为DataFrame的索引,这样后续转字典时会自动用它作为键。[target_cols]:筛选出我们需要的四列,排除不需要的C列。apply(..., axis=1):对每一行做处理,把浮点数类型的数值转成整数,再转换成列表格式。to_dict():将处理后的Series直接转换成你需要的字典结构。
运行后就能得到完全符合需求的输出:
{'Friday': [136, 239, 0, 283], 'Monday': [305, 431, 0, 845], 'Saturday': [0, 3, 0, 11]}
内容的提问来源于stack exchange,提问作者MMMMS
相关产品推荐
相关产品推荐

