要按列表列中的元素分组Pandas DataFrame,可以使用groupby()
函数。以下是一个示例代码:
import pandas as pd
# 创建示例DataFrame
data = {'Name': ['John', 'Tom', 'Amy', 'John', 'Tom'],
'Age': [25, 28, 30, 25, 28],
'City': ['New York', 'London', 'Paris', 'New York', 'London']}
df = pd.DataFrame(data)
# 按Name列分组
grouped = df.groupby('Name')
# 遍历每个分组
for name, group in grouped:
print("Group Name:", name)
print(group)
print()
# 获取特定分组的数据
john_group = grouped.get_group('John')
print(john_group)
上述代码首先创建了一个示例的DataFrame,其中包含Name、Age和City三列。然后使用groupby()
函数按Name列进行分组,并将分组结果存储在grouped
变量中。接着使用for
循环遍历每个分组,并打印出分组的名称和数据。最后,使用get_group()
函数获取特定分组(例如'John')的数据。
运行上述代码,将会得到以下输出:
Group Name: Amy
Name Age City
2 Amy 30 Paris
Group Name: John
Name Age City
0 John 25 New York
3 John 25 New York
Group Name: Tom
Name Age City
1 Tom 28 London
4 Tom 28 London
Name Age City
0 John 25 New York
3 John 25 New York
上一篇:按列表分组 - 数据帧
下一篇:按列表条件在子实体中搜索