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

如何将二维列表转换为单一行多列的Pandas DataFrame

解决方法

你现有代码的问题在于zip(a)会将二维列表的每个子列表作为独立元素打包,最终生成2行1列的DataFrame。要实现所有元素放在同一行、每个值对应独立列的效果,首先需要将嵌套的二维列表展平为一维结构,再构造DataFrame即可。你代码中写的嵌套for循环本身就是遍历所有元素的逻辑,直接把遍历到的元素收集为一维列表即可使用。

完整可运行代码

import pandas as pd
a = [[1,2],[3,5,6]]

# 展平二维列表为一维列表
flat_a = [item for sublist in a for item in sublist]
# 构造单行DataFrame,外层加[]是为了将一维列表识别为行数据
df = pd.DataFrame([flat_a])
print(df)

# 若需要自定义列名,可指定columns参数
df_with_col = pd.DataFrame([flat_a], columns=[f"d{i+1}" for i in range(len(flat_a))])
print("\n自定义列名后的输出:")
print(df_with_col)

输出说明

运行后将得到1行5列的DataFrame,所有元素按原顺序分布在不同列中,符合预期需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 11:45:08