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

如何在Jupyter Notebook中添加行?求解ValueError报错问题

问题解决:ValueError: Length of values (8) does not match length of index (7)

报错原因

你这段代码是尝试给DataFrame df_t 新增一列My address,但赋值的列表包含8个元素,而当前df_t只有7行(索引长度为7)。Pandas要求新增列的元素数量必须与DataFrame的行数完全匹配,因此触发了这个错误。

分场景解决方案

场景1:确实要新增列(调整元素数量匹配行数)

把赋值的列表长度改成7个元素即可,比如去掉多余的元素:

df_t["My address"] = ["My address",7,"My city","My State","My Country","My Shop",12]

或者通过切片截取前7个元素:

df_t["My address"] = ["My address",7,"My city","My State","My Country","My Shop",12,"My Continent"][:7]

场景2:实际想添加行(而非列)

你提到想“添加行”,但当前代码写法是新增列,正确的添加行方式如下:

  • 推荐使用pd.concat(适配Pandas 2.0+版本):
import pandas as pd
# 构造新行的DataFrame
new_rows = pd.DataFrame({"My address": ["My address",7,"My city","My State","My Country","My Shop",12,"My Continent"]})
# 合并到原DataFrame
df_t = pd.concat([df_t, new_rows], ignore_index=True)
  • 旧版本Pandas可使用append(注意该方法已被标记为弃用):
new_row = pd.Series(["My address",7,"My city","My State","My Country","My Shop",12,"My Continent"], name='My address')
df_t = df_t.append(new_row, ignore_index=True)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 09:06:36