Loop to change dataframe titles - python
本问题已经有最佳答案,请猛点这里访问。
我试图循环遍历数据帧的标题,并将其更改为标题的最后一个字符,这样我就可以将它们转换为月份。我想要一个循环,因为我每个月都会得到数据,我想让它自动化,这样我就不会手动添加标题名称。当我打印标题时,我得到的是:
1 2 3 | list(df) ['MCA036_LIFETIME_1', 'MCA036_LIFETIME_2', 'MCA036_LIFETIME_3', 'Total'] |
我希望标题是:
1 2 3 | list(df) ['January','February','March','Total'] |
任何指导都将不胜感激。
你不需要循环,只要:
1 | df.columns = ['January','February','March','Total'] |
如果要自动转换该列表中的字符串,则这是一个常见的python问题,与pandas无关:
1 2 3 4 5 6 | 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'] |