📅  最后修改于: 2023-12-03 15:18:14.035000             🧑  作者: Mango
Pandas是Python中用于数据处理和数据分析的一个重要库。其中groupby
函数是Pandas中用于将数据按照某些规则分组的函数。以下将介绍groupby
函数的用法。
我们使用以下数据来演示groupby
函数:
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily', 'Frank'],
'Sex': ['Female', 'Male', 'Male', 'Male', 'Female', 'Male'],
'Age': [25, 35, 50, 20, 30, 45],
'Salary': [5000, 4000, 6000, 3000, 4500, 5500]}
df = pd.DataFrame(data)
我们使用groupby
函数按照Sex
列对数据进行分组,并将结果保存到变量grouped
中:
grouped = df.groupby(['Sex'])
我们可以对grouped
变量进行计数、求和、均值等一系列操作。以下是几个示例:
# 对年龄进行计数
grouped['Age'].count()
# 对年龄求和
grouped['Age'].sum()
# 对薪资取平均值
grouped['Salary'].mean()
我们也可以使用多列进行分组。以下是一个示例:
grouped = df.groupby(['Sex', 'Age'])
我们可以根据一些特定的条件筛选分组数据。以下是一个示例:
grouped = df.groupby(['Sex'])
grouped_filter = grouped.filter(lambda x: x['Age'].mean() > 25)
以上代码将筛选出Age
列的均值大于25的所有数据。
另外,我们也可以对分组数据进行遍历,以下是一个示例:
grouped = df.groupby(['Sex'])
for name, group in grouped:
print(name)
print(group)
以上代码将按照Sex
列进行分组,并分别打印出分组名和分组数据。