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

如何用Pandas替换CSV指定列并生成新数据集data_2?

解决方案:替换DataFrame指定列并生成新数据集

嘿,刚学Pandas遇到这种修改列的问题太正常了,我给你两种简单直接的方法来实现需求:

方法一:基于已生成的last_col替换

既然你已经得到了处理好的last_col,只需要先复制原数据集避免误改原始数据,再把last_col赋值给新数据集的对应列就行:

import pandas as pd
# 读取原始数据
data = pd.read_csv('filelocation/Data.csv', header=None)
# 生成处理后的last_col
last_col = data.iloc[0:208, 60].replace(['R','M'], [0,1])
# 复制原数据集得到独立的data_2(关键:避免修改原始data)
data_2 = data.copy()
# 将处理好的列替换到data_2的对应位置
data_2.iloc[0:208, 60] = last_col

方法二:一步到位直接处理新数据集

如果你不想单独生成last_col,也可以直接在新数据集上完成替换操作,代码更简洁:

import pandas as pd
data = pd.read_csv('filelocation/Data.csv', header=None)
# 复制原数据集并直接替换指定列
data_2 = data.copy()
data_2.iloc[0:208, 60] = data_2.iloc[0:208, 60].replace(['R','M'], [0,1])

小提醒

  • 一定要用data.copy()创建新数据集,因为Pandas里直接赋值(比如data_2 = data)是引用关系,修改data_2会同步改变原始的data,这通常不是我们想要的结果。
  • 你用iloc[0:208,60]定位列是完全正确的,因为header=None时列索引从0开始,第60列就是你要处理的最后一列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 10:05:18