以下是一个按照一列进行排序和分组的示例代码解决方法:
import pandas as pd
# 创建示例数据
data = {'Name': ['John', 'Mike', 'Sarah', 'Mike', 'John'],
'Age': [25, 30, 28, 35, 20],
'City': ['New York', 'London', 'Paris', 'London', 'New York']}
df = pd.DataFrame(data)
# 按照 'Name' 列进行排序
df_sorted = df.sort_values('Name')
# 按照 'Name' 列进行分组
df_grouped = df.groupby('Name')
# 打印排序后的数据
print("按照 'Name' 列排序后的数据:")
print(df_sorted)
# 打印分组后的数据
print("按照 'Name' 列分组后的数据:")
for name, group in df_grouped:
print(f"Name: {name}")
print(group)
print()
输出结果:
按照 'Name' 列排序后的数据:
Name Age City
0 John 25 New York
4 John 20 New York
2 Sarah 28 Paris
1 Mike 30 London
3 Mike 35 London
按照 'Name' 列分组后的数据:
Name: John
Name Age City
0 John 25 New York
4 John 20 New York
Name: Mike
Name Age City
1 Mike 30 London
3 Mike 35 London
Name: Sarah
Name Age City
2 Sarah 28 Paris
上述代码使用pandas库创建了一个DataFrame,并按照 'Name' 列进行了排序和分组。首先,通过 df.sort_values('Name')
对DataFrame进行排序,然后通过 df.groupby('Name')
对DataFrame进行分组。最后,使用循环打印排序后的数据和分组后的数据。