如何将pandas DataFrame按重复列值为key转换为value为列表的字典
实现方案
你可以直接按col1字段分组后聚合为列表,再转字典即可,单行代码就能完成需求:
d = df.groupby('col1')['col2'].apply(list).to_dict()
完整测试示例
你可以用下方代码验证效果:
import pandas as pd # 构造示例DataFrame df = pd.DataFrame({ "col1": ["a", "a", "b", "c", "c"], "col2": [12, 2, 34, 9, 45] }) # 执行转换 d = df.groupby('col1')['col2'].apply(list).to_dict() # 输出验证 print(d) # 运行结果:{'a': [12, 2], 'b': [34], 'c': [9, 45]}
内容的提问来源于stack exchange,提问作者paDU
相关产品推荐
相关产品推荐

