在 Pandas DataFrame 中将列移到前面
Python 有一个名为 Pandas
的数据分析库。我们可以在 Python 中使用 Pandas 对 DataFrame 执行许多不同类型的操作。
本指南将解释重新排序 pandas DataFrame 中的列以使其移到前面的方法。
在 Pandas DataFrame 中将一列移到最前面
假设我们要重新排列 DataFrame 中列的位置。Pandas 提供了 insert()
和 reindex()
方法,它们将单列移动到 Pandas DataFrame 的前面。
使用 pop()
和 insert()
方法
这个想法是使用 pop()
方法删除我们想要移动到前面的列。然后通过指定要插入的位置,使用 insert()
方法将该列再次插入到 DataFrame 中。
在下面的代码中,我们有一个由学生记录组成的 DataFrame。我们的目标是将名称
列移到前面。
首先,我们将使用 pop()
方法将其删除,pop()
方法将我们要删除的列标签作为参数并返回它。我们将返回的列存储在 col
中。
通过 insert()
方法,我们通过将列的位置定义为 loc=0
(第一列位置)、列名和实际列)将列推回 DataFrame。
示例代码:
# Python 3.x
import pandas as pd
student = {
"Course": ["Java", "Python", "C++", "Dart"],
"Marks": [70, 80, 90, 60],
"Age": [19, 20, 21, 19],
"Name": ["Jhon", "Aliya", "Nate", "Amber"],
}
df = pd.DataFrame(student)
print(df)
col = df.pop("Name")
df.insert(loc=0, column="Name", value=col)
print(df)
输出:
$python3 Main.py
Course Marks Age Name
0 Java 70 19 Jhon
1 Python 80 20 Aliya
2 C++ 90 21 Nate
3 Dart 60 19 Amber
Name Course Marks Age
0 Jhon Java 70 19
1 Aliya Python 80 20
2 Nate C++ 90 21
3 Amber Dart 60 19
使用 reindex()
方法
我们可以通过重新索引
它们来重新排列列。reindex()
方法对列进行重新排序。
该方法在 pandas.DataFrame
模块中可用。我们将按照我们想要的顺序提供列名列表,并将 list
和 DataFrame
传递给 reindex()
方法以返回更新的 DataFrame。
示例代码:
# Python 3.x
import pandas as pd
student = {
"Course": ["Java", "Python", "C++", "Dart"],
"Marks": [70, 80, 90, 60],
"Age": [19, 20, 21, 19],
"Name": ["Jhon", "Aliya", "Nate", "Amber"],
}
df = pd.DataFrame(student)
print(df)
df = pd.DataFrame.reindex(df, columns=["Name", "Course", "Marks", "Age"])
print(df)
输出:
$python3 Main.py
Course Marks Age Name
0 Java 70 19 Jhon
1 Python 80 20 Aliya
2 C++ 90 21 Nate
3 Dart 60 19 Amber
Name Course Marks Age
0 Jhon Java 70 19
1 Aliya Python 80 20
2 Nate C++ 90 21
3 Amber Dart 60 19
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedIn