Python - 更改 Pandas DataFrame 中的列名和行索引

pythonserver side programmingprogrammingpandas

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)

输出

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

            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

使用 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)

输出

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

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

通过添加前缀

Pandas dataframe 提供了向列名添加前缀和后缀的方法。我们只需使用此方法添加所需的前缀,该前缀将附加到每个列名。

示例

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-'))

输出

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

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

相关文章