Python如何永久重命名DataFrame列?解决Colab修改不持久问题
永久重命名数据集列名的方法
你当前用df.rename(columns={'horsepower':'hp'})只是在内存里修改了DataFrame的列名,并没有把修改同步到原始数据集文件里,所以重新读取时列名会变回原样。要实现永久修改,核心是把修改后的DataFrame重新写入到原文件(或替换原始数据源)。
具体操作步骤:
确保内存中列名修改生效
重命名时要么把结果赋值给原变量,要么用inplace=True直接修改原DataFrame:# 方式1:赋值覆盖原变量 df = df.rename(columns={'horsepower':'hp'}) # 方式2:原地修改 df.rename(columns={'horsepower':'hp'}, inplace=True)将修改后的DataFrame保存回文件
根据你的数据集格式选择对应保存方法,覆盖原文件即可:- 若是CSV文件:
df.to_csv('Car_sales.csv', index=False)index=False避免把DataFrame的索引写入文件,可按需调整。 - 若是Excel文件:
df.to_excel('Car_sales.xlsx', index=False)
- 若是CSV文件:
验证永久修改效果
重新读取文件,确认列名已更新:import pandas as pd df = pd.read_csv('Car_sales.csv') print(df.columns) # 此时应显示'hp'而非'horsepower'
注意:如果你的数据集来自Google Drive等云端存储,要确保保存路径指向原始文件的位置,这样才能覆盖云端的原数据;若是数据库中的表,则需要修改表的列结构而非仅修改内存中的DataFrame。
内容的提问来源于stack exchange,提问作者Prachi Yadav
相关产品推荐
相关产品推荐

