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

如何将pandas导出CSV生成的Unnamed: 0列重命名为class?

解决方案

你有两种实现方式,优先选第一种,从生成环节就避免多余的Unnamed: 0列生成:

方式1:导出CSV时直接指定索引列名(推荐)

在调用to_csv方法时新增index_label参数指定索引列的名称,修改你代码里的导出逻辑即可:

import re
import pandas as pd
import csv

# 逐行读取channelNames.txt文件获取分类名称
channel_file = "../input_data/images/channelNames.txt"

with open(channel_file, "r") as class_info:
    lines = class_info.readlines()
    cls_names = []
    # 过滤带"Blank"的行
    for l in lines:
        if re.findall(r"Blank", l):
            pass
        else:
            cls_names.append(l.strip()) # 补充strip去掉每行末尾的换行符,避免数据带多余格式

# 生成classes.csv
cls_df = pd.DataFrame(cls_names, columns=["class_name"])
# 新增index_label参数指定索引列名
cls_df.to_csv('classes.csv', index=True, index_label='class')

cls_read = pd.read_csv("classes.csv")
cls_read.head()

执行后直接就能得到你要的输出效果:

classclass_name
0A
1B
2C
3D

方式2:已有CSV文件的情况下,读取后重命名列

如果已经生成了CSV文件不想重新导出,读取后直接修改列名即可:

import pandas as pd

cls_read = pd.read_csv("classes.csv")
# 重命名指定列
cls_read = cls_read.rename(columns={'Unnamed: 0': 'class'})
# 如果需要覆盖保存原文件的话,加下面这行
# cls_read.to_csv('classes.csv', index=False)

cls_read.head()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 20:18:04