📜  在Python中更改 Pandas DataFrame 列的顺序(1)

📅  最后修改于: 2023-12-03 15:07:55.870000             🧑  作者: Mango

在Python中更改 Pandas DataFrame 列的顺序

在 Pandas 中操作数据时,有时需要更改 DataFrame 列的顺序。本文将介绍两种方法实现该操作。

方法一:使用 loc 方法

使用 loc 方法可以通过切片的方式重新排列 DataFrame 列的顺序。

import pandas as pd

data = {'Name': ['Alice', 'Bob', 'Charlie'],
        'Age': [25, 30, 35],
        'City': ['New York', 'London', 'Paris'],
        'Country': ['USA', 'UK', 'France']}

df = pd.DataFrame(data)

# 排除需要修改的列,将其余列按位置切片取出,并重新排列
df = df.loc[:, ['Name', 'Country', 'City', 'Age']]

print(df)

输出结果:

       Name Country      City  Age
0     Alice     USA  New York   25
1       Bob      UK    London   30
2  Charlie  France     Paris   35

在上述代码中,我们将需要修改的列通过位置索引排除,将剩余的列重新按指定顺序排列。

方法二:使用 reindex 方法

使用 reindex 方法也可以实现重新排列 DataFrame 列顺序的操作。

import pandas as pd

data = {'Name': ['Alice', 'Bob', 'Charlie'],
        'Age': [25, 30, 35],
        'City': ['New York', 'London', 'Paris'],
        'Country': ['USA', 'UK', 'France']}

df = pd.DataFrame(data)

# 以新的列名列表作为参数调用 reindex 方法并重新赋值
df = df.reindex(columns=['Name', 'Country', 'City', 'Age'])

print(df)

输出结果:

       Name Country      City  Age
0     Alice     USA  New York   25
1       Bob      UK    London   30
2  Charlie  France     Paris   35

以上代码中,我们通过指定新的列名列表将 DataFrame 列顺序重新排列。

总结:以上两种方法都能实现重新排列 DataFrame 列顺序的操作,使用方法二比方法一更加简洁。