首页 > 解决方案 > 更改熊猫数据框中的列名

问题描述

我对随时随地进行编码和学习完全陌生,需要一些建议。

我有一个从 excel.csv 文件导入到 jupyter notebook 的数据集。列标题都是格式为“2020 年 1 月 22 日”(2020 年 1 月 22 日)的日期,我希望它们读作“Day1”、“Day2”、“Day3”等。我已手动将它们更改为读取想要它们,但 csv 文件每天都会更新一个新列,这意味着当我将它读入笔记本以生成我想要的图表时,我首先必须更新笔记本中的代码并添加额外的“Dayxxx”。这不是一个大问题,但我现在在 csv 文件/数据集中有 92 天,而且越来越无聊。我想知道是否有一种方法可以通过读取文件并使用 for 或 while 循环来更改列标题来自动添加“Dayxxx”。

任何建议都非常感谢,谢谢。

斯蒂芬。

标签: pythonpandasdataframecolumnheader

解决方案


我知道这些是您唯一的专栏,并且它们已经从第一天到最后一天订购了?您可以通过获取df.columns返回的列名列表的长度来获取天数。从那里您可以使用所需的列名创建一个新列表。

import pandas as pd

df = pd.read_csv("your_csv")

no_columns = len(df.columns)
new_column_names = [] 
for day in range(no_columns):
    new_column_names.append("Day "+str(day+1))

df.columns = new_column_names

推荐阅读