You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从含多值的字典自定义生成Pandas DataFrame?

解决方法

首先,pd.DataFrame.from_dict() 根本没有 index 这个参数,这就是你报错的原因。要得到你想要的结果,得先把字典里的字符串值解析成结构化数据,再转成DataFrame,步骤如下:

  1. 解析字符串为嵌套字典:
    原始字典里的每个值是类似 val1=343, val2=935 的字符串,需要先拆成键值对,变成嵌套字典:

    parsed_dict = {
        k: dict(item.split('=') for item in v.split(', ')) 
        for k, v in dico.items()
    }
    

    处理后parsed_dict的结构为:

    {'abc': {'val1': '343', 'val2': '935'},
     'def': {'val1': '95', 'val2': '935'},
     'ghi': {'val1': '123', 'val2': '508'}}
    
  2. 转换为目标DataFrame:
    使用from_dict时指定orient='index',让原始字典的键(abc/def/ghi)成为行索引,嵌套字典的键(val1/val2)成为列名,最后可选把字符串数值转为整数类型:

    import pandas as pd
    
    df = pd.DataFrame.from_dict(parsed_dict, orient='index')
    df = df.astype(int)
    

执行后得到的DataFrame格式如下:

val1val2
abc343935
def95935
ghi123508

内容的提问来源于stack exchange,提问作者user19956605

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 17:40:29