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

pandas创建DataFrame报All arrays must be of the same length错误解决

报错触发原因

pandas构造DataFrame时强制要求所有传入列的序列长度一致,你当前代码中name列对应的列表长度为2,work_type列对应的列表长度为4,长度不匹配就会抛出ValueError: All arrays must be of the same length错误。

可选择的修正方式

根据你的实际数据需求选对应方案即可:

  • 补全短列长度:如果work_type列的4个值都是有效数据,给name列补全对应长度,空缺位置填充np.nan,修正后代码:
import numpy as np   
import pandas as pd  

dataset = pd.DataFrame({
    'name':['work_type', np.nan, np.nan, np.nan],
    'work_type':['Private', 'Self-employed', 'Govt_job', np.nan]
}) 
  • 裁剪长列长度:如果name列的2个值是完整数据,把work_type列多余的冗余值删掉,保证两列长度一致,修正后代码:
import numpy as np   
import pandas as pd  

dataset = pd.DataFrame({
    'name':['work_type', np.nan],
    'work_type':['Private', 'Self-employed']
}) 
  • 自动对齐填充(适用于pandas 1.4.0及以上版本):构造时显式传入index参数指定最终DataFrame的行索引,pandas会自动按索引匹配各列数据,缺失位置自动填充NaN,不需要手动修改列表长度,示例代码:
import numpy as np   
import pandas as pd  

dataset = pd.DataFrame(
    {
        'name':['work_type', np.nan],
        'work_type':['Private', 'Self-employed', 'Govt_job', np.nan]
    },
    index=[0, 1, 2, 3]
)

注意:自动对齐规则是各列从索引0开始依次匹配,超出原序列长度的位置统一填充缺失值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.03 03:30:59