Python - 怎样把 Pandas DataFrame 中的列移动到第一位?


使用 pop() 弹出列并使用 insert() 方法插入列,即移动列。首先创建一个有 3 列的 DataFrame -

dataFrame = pd.DataFrame(
   {
      "Student": ['Jack', 'Robin', 'Ted', 'Marc', 'Scarlett', 'Kat', 'John'],"Result": ['Pass', 'Fail', 'Pass', 'Fail', 'Pass', 'Pass', 'Pass'],"Roll Number": [ 5, 10, 3, 8, 2, 9, 6]
   }
)

首先弹出列,把 "Roll Number" 列移动到第一位 -

shiftPos = dataFrame.pop("Roll Number")

把列插入到第一位 -

dataFrame.insert(0, "Roll Number", shiftPos)

实例

以下为代码 -

import pandas as pd

# Create DataFrame
dataFrame = pd.DataFrame(
   {
      "Student": ['Jack', 'Robin', 'Ted', 'Marc', 'Scarlett', 'Kat', 'John'],"Result": ['Pass', 'Fail', 'Pass', 'Fail', 'Pass', 'Pass', 'Pass'],"Roll Number": [ 5, 10, 3, 8, 2, 9, 6]
   }
)

print"DataFrame ...\n",dataFrame

# move column "Roll Number" to 1st position
shiftPos = dataFrame.pop("Roll Number")

# insert column on the 1st position
dataFrame.insert(0, "Roll Number", shiftPos)

print"\nUpdated DataFrame after moving a column to the first position...\n",dataFrame

输出

将产生以下输出 -

DataFrame ...
   Result   Roll Number   Student
0    Pass             5      Jack
1    Fail            10     Robin
2    Pass             3       Ted
3    Fail             8      Marc
4    Pass             2  Scarlett
5    Pass             9       Kat
6    Pass             6      John

Updated DataFrame after moving a column to the first position...
   Roll Number   Result   Student
0            5     Pass      Jack
1           10     Fail     Robin
2            3     Pass       Ted
3            8     Fail      Marc
4            2     Pass  Scarlett
5            9     Pass       Kat
6            6     Pass      John

更新于: 20-Sep-2021

1 千 + 次浏览

开启你的 职业 生涯

通过完成本课程获得认证

开始学习
广告