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

创建DataFrame触发ValueError:如何用3个numpy数组生成三列DataFrame?

解决方法

错误原因是你传入的[a, b, c]会被pandas识别为3行数据,每行有120个元素(对应120列),但你指定了仅3列,列数不匹配导致报错。

以下两种常用方法可以正确创建包含这三列的DataFrame:

方法一:使用字典传入数据(推荐)

直接以列名为键、对应数组为值构建字典,pandas会自动将每个数组作为一列:

import pandas as pd

df = pd.DataFrame({"a": a, "b": b, "c": c})

方法二:转置数组后传入

先将数组组成的列表转为二维数组,再转置成120行3列的结构,再指定列名:

import pandas as pd
import numpy as np

df = pd.DataFrame(data=np.array([a, b, c]).T, columns=["a", "b", "c"])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 01:20:33