重命名Pandas DataFrame中的数字列标题

6
我有一个DataFrame,其列名为整数,像这样:

      1     2     3     4
 Red  7     3     2     9
 Blue 3     1     6     4

我想要重命名列。我尝试使用以下方式:

df = df.rename(columns={'1': 'One', '2': 'Two', '3': 'Three', '4': 'Four'})

但这并不改变列名。当列名是数字时,我是否需要做其他处理才能更改列名?

3个回答

3
您需要删除引号:
df = df.rename(columns={1: 'One', 2: 'Two', 3: 'Three', 4: 'Four'})

1
我批准这条消息 (-: 还有一点俏皮的 df.rename(columns='Zero One Two Three Four'.split().__getitem__) - piRSquared

1
如果您使用以下内容:
>>> df.columns = ['One', 'Two', 'Three', 'Four']
>>> df
    One Two Three   Four
0   7   3   6       9
1   3   1   2       4

1
你可以使用两种方法来更改Pandas DataFrame中的列名。
  1. 使用df.columns属性更改列名。

    df.columns = ['One', 'Two', 'Three', 'Four']

  2. 使用rename()函数

    df = df.rename(columns={1: 'One', 2: 'Two', 3: 'Three', 4: 'Four'})


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接