【问题标题】:How to change column names from numbers to names [closed]如何将列名从数字更改为名称[关闭]
【发布时间】:2020-04-10 04:39:55
【问题描述】:
我有一个如下所示的数据框:
我想更改列名,例如:“2018-12-31 00:00:00”到“year_2018”。
我该怎么做?
【问题讨论】:
标签:
python
python-3.x
pandas
dataframe
【解决方案1】:
首先,将非日期列移入索引,然后使用replace和reset_index:
df = df.set_index('CashFlows')
df = df.rename(columns=lambda x: 'year_'+str(x.year))
【解决方案2】:
假设你有以下数据框
2018-12-31 00:00:00 2019-12-31 00:00:00 2020-12-31 00:00:00
0 blah blah blah
1 blah blah blah
只是做
from dateutil import parser
df.columns = [parser.parse(c).strftime('year_%Y') for c in df.columns]
df
输出
year_2018 year_2019 year_2020
0 blah blah blah
1 blah blah blah
【解决方案3】:
查看df.columns,找到列名和dtype。
df.rename(columns={'foo':'bar'},inplace=True)