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

如何使用pandas为已存在的CSV文件添加右侧新列

问题原因

CSV是纯文本格式,pandas.DataFrame.to_csv()的mode='a'参数是行追加模式,只会把新的DataFrame内容作为新行拼接到原有文件末尾,不会自动做横向列合并的逻辑,因此你当前的写法会把Eye列的数据追加到原有第一列下方,无法实现新增右侧列的需求。

解决方法

修改code-2.py逻辑:先读取原有CSV文件内容到DataFrame,将新的Eye列合并到原有DataFrame的右侧,再整体覆盖写入原CSV文件即可。

修改后的code-2.py示例代码:

import pandas as pd

# 原有逻辑生成Eye列数据
df = pd.DataFrame(results)

# 读取已存在的test.csv
old_df = pd.read_csv('test.csv')

# 横向合并新旧数据,新增Eye列到右侧
# 若你的results直接是Eye列的数值列表,可直接写 old_df['Eye'] = results 省略生成df的步骤
combined_df = pd.concat([old_df, df], axis=1)

# 覆盖写入原CSV文件
combined_df.to_csv('test.csv',
                   mode='w',
                   header=True,
                   index=False)
注意事项
  • 需确保新生成的Eye列行数与原有CSV的行数完全一致,否则合并后会出现空值NaN
  • 如果需要一次性追加多列,只需要保证新生成的DataFrame包含对应列即可,concat方法会自动把所有新列追加到原有数据右侧

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 01:45:03