我试图遍历数据框的标题并将它们更改为标题的最后一个字符,然后我可以将它们转换为几个月。我想要一个循环,因为我每个月都会获得数据,并且我想让它自动化,所以我不会手动添加标题名称。当我打印标题时,这就是我得到的:
list(df)
['MCA036_LIFETIME_1', 'MCA036_LIFETIME_2', 'MCA036_LIFETIME_3', 'Total']
我想要的标题是:
list(df)
['January','February','March','Total']
非常感谢任何指导。
答案 0 :(得分:3)
你不需要循环,只需:
df.columns = ['January','February','March','Total']
如果你想自动转换该列表中的字符串,这是一个普遍的Python问题,与pandas无关:
In [141]: all_monthes = ['January', 'February', 'March']
In [142]: l = ['MCA036_LIFETIME_1', 'MCA036_LIFETIME_2', 'MCA036_LIFETIME_3', 'Total']
In [143]: [all_monthes[int(e.split('_')[-1])-1] if e != 'Total' else e for e in l]
Out[143]: ['January', 'February', 'March', 'Total']