下面是关于pandas对group进行聚合的例子的完整攻略:
什么是groupby
在pandas中,可以通过groupby来将数据分组并按组进行聚合操作。这个功能类似于SQL中的GROUP BY操作。
聚合函数
在进行分组聚合操作时,需要使用聚合函数,常见的聚合函数有mean, sum, max, min, count, median等。
示例1
我们可以通过一个示例来演示groupby的使用方法。下面是代码:
import pandas as pd
# 读取数据
data = pd.read_csv('data.csv')
# 以gender为分组依据,计算salary的平均值
grouped_data = data.groupby('gender')['salary'].mean()
print(grouped_data)
这里的data.csv是一个包含员工信息的数据文件,其中包含了每个员工的性别(gender)和工资(salary)信息。上面的代码实现了将数据按照性别进行分组,并计算每个分组中工资的平均值。输出结果为:
gender
F 2852.0
M 3580.0
Name: salary, dtype: float64
这个结果告诉我们,女性员工的平均工资为2852元,男性员工的平均工资为3580元。
示例2
我们还可以进行更加复杂的聚合操作,比如实现统计不同部门中男女员工的工资情况。下面是相应的代码:
import pandas as pd
# 读取数据
data = pd.read_csv('data.csv')
# 以gender, department为分组依据,计算salary的平均值和总数
grouped_data = data.groupby(['gender', 'department'])['salary'].agg({'mean_salary': 'mean', 'count_salary': 'count'})
print(grouped_data)
这里agg函数可以同时计算多个聚合函数,其结果会存储在多层的列中。输出的结果如下:
mean_salary count_salary
gender department
F finance 2752.0 1
sales 2952.0 2
technology 2852.0 2
M finance 3880.0 1
sales 3409.0 2
technology 4000.0 1
这个结果告诉我们,对于每个部门和性别组合,可以分别计算他们的平均工资和员工总数。
以上就是Pandas对group进行聚合的示例攻略,希望对你有帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:pandas 对group进行聚合的例子 - Python技术站