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

嵌套循环生成字典追加到pandas DataFrame时concat报错问题咨询

错误原因

  • pd.concat仅支持拼接Series、DataFrame类型的对象,你传入了dict类型触发类型不匹配错误
  • 循环内反复调用concat会生成大量临时对象,性能极低,不推荐使用

正确实现方案

更高效的写法是先把所有循环生成的字典存入列表,最后一次性转为DataFrame再调整结构。

适配你提供的测试用例代码

import pandas as pd

letts = [('a','b','c'),('e','f','g'),('h','i','j'),('k','l','m'),('n','o','p')]
numns = [(1,2,3),(4,5,6),(7,8,9),(10,11,12),(13,14,15)]

# 空列表存储每次迭代生成的字典
dict_list = []
for i in letts:
    for j in numns:
        current_dict = dict(zip(i, j))
        dict_list.append(current_dict)

# 转置后字典键会成为行索引,列对应每次迭代的结果
df_final = pd.DataFrame(dict_list).T

提示:如果需要字典键作为列名、每次迭代结果作为行,去掉末尾的.T即可。

适配你最初业务逻辑的代码

import pandas as pd

dict_list = []
for i in blahh:
    current_dict = dict(zip(blahh['x'][i], blahh['y'][i]))
    dict_list.append(current_dict)

df_final = pd.DataFrame(dict_list).T

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 10:18:00