📅  最后修改于: 2023-12-03 14:46:15.549000             🧑  作者: Mango
如果需要按照列表中的一列或多列对数据帧进行排序,可以使用Python的内置函数sort_values()
。这个函数可以对数据框中多列或单列进行升序或者降序排序。下面是一个示例:
import pandas as pd
# 创建示例数据帧
data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily'],
'age': [25, 35, 20, 28, 22],
'gender': ['F', 'M', 'M', 'M', 'F']}
df = pd.DataFrame(data)
# 按照age列进行升序排序
df.sort_values('age', ascending=True, inplace=True)
print(df)
输出:
name age gender
2 Charlie 20 M
4 Emily 22 F
0 Alice 25 F
3 David 28 M
1 Bob 35 M
在这个示例中,我们创建了一个包含姓名、年龄和性别的数据帧。然后,我们使用sort_values()
函数按照age
列进行升序排序,并将结果存储在原始数据帧中。最后,我们打印了排序后的数据帧。
如果需要对多列进行排序,可以向sort_values()
函数传递一个列表,其中包含需要排序的列名。
import pandas as pd
# 创建示例数据帧
data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily'],
'age': [25, 35, 20, 28, 22],
'gender': ['F', 'M', 'M', 'M', 'F']}
df = pd.DataFrame(data)
# 按照gender列进行升序排序,如果gender相同则按照age列升序排序
df.sort_values(['gender', 'age'], ascending=[True, True], inplace=True)
print(df)
输出:
name age gender
2 Charlie 20 M
3 David 28 M
1 Bob 35 M
0 Alice 25 F
4 Emily 22 F
在这个示例中,我们首先按照gender
列进行升序排序,如果gender
相同则按照age
列升序排序。
使用sort_values()
函数可以灵活地对数据帧进行排序,适用于各种排序需求。