如何将列名从数字更改为名称

问题描述 投票:-4回答:3

我有一个看起来像这样的数据框:

dataframe

我想将列名更改,例如:“ 2018-12-31 00:00:00”更改为“ year_2018”。我该怎么办?

python python-3.x pandas dataframe
3个回答
1
投票

首先,将非日期列移入索引,然后使用replace和reset_index:

df = df.set_index('CashFlows')
df = df.rename(columns=lambda x: 'year_'+str(x.year))

0
投票

查看df.columns,找到列和dtype的名称。

df.rename(colummns={'foo':'bar'},inplace=True)

0
投票

说您具有以下数据框

       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

© www.soinside.com 2019 - 2024. All rights reserved.