Python – 在Pandas DataFrame中更改列名和行索引

Python – 在Pandas DataFrame中更改列名和行索引

Pandas是一个Python库,提供了许多数据分析功能,这些功能在Python标准库中不可用。 其中一个功能是使用数据帧。 它们是表示列和行的矩形网格。 在创建数据帧时,我们决定列的名称并在随后的数据操作中引用它们。 但是可能会出现需要在创建数据帧后更改列名称的情况。 在本文中,我们将看到如何实现这一点。

使用rename()方法

这是最常用的方法,因为我们可以使用此方法更改列名和行索引。 我们只需将旧值和新值作为键值对字典传递给此方法,然后用新名称保存数据帧。

示例

import pandas as pd

df = pd.DataFrame({
   'ColumnA': [23, 92, 32],
   'ColumnB': [54, 76, 43],
   'ColumnC': [16, 45, 10]
},
index=['10-20', '20-30', '30-40'])

df_renamed = df.rename(columns={'ColumnA': 'Col1', 'ColumnB': 'Col2', 'ColumnC': 'Col3'},
index={'10-20': '1', '20-30': '2', '30-40': '3'})
print(df)
print("\n",df_renamed)
Python

输出

运行上述代码会得到以下结果:

              ColumnA    ColumnB    ColumnC
10-20             23         54         16
20-30             92         76         45
30-40             32         43         10

              Col1        Col2        Col3
1                23         54         16
2                92         76         45
3                32         43         10
Python

使用df.columns

df.columns可以直接分配新的列名。 当再次使用数据帧时,引用新的列名。

示例

import pandas as pd

df = pd.DataFrame({
   'ColumnA': [23, 92, 32],
   'ColumnB': [54, 76, 43],
   'ColumnC': [16, 45, 10]
},
index=['10-20', '20-30', '30-40'])

df.columns=["Length","Breadth","Depth"]
print(df)
Python

输出

运行上述代码会得到以下结果:

              Length      Breadth Depth
10-20         23         54         16
20-30         92         76         45
30-40         32         43         10
Python

通过添加前缀

Pandas数据帧提供了向列名添加前缀和后缀的方法。 我们使用此方法简单地添加所需的前缀,该前缀附加到每个列名。

示例

import pandas as pd

df = pd.DataFrame({
   'ColA': [23, 92, 32],
   'ColB': [54, 76, 43],
   'ColC': [16, 45, 10]
},
index=['10-20', '20-30', '30-40'])

print(df.add_prefix('Jan-'))
Python

输出

运行上述代码会得到以下结果:

            Jan-ColA    Jan-ColB    Jan-ColC
10-20             23         54         16
20-30             92         76         45
30-40             32         43         10
Python

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册