python中group by的用法是什么

avatar
作者
猴君
阅读量:6

在Python中,group by是一种用于将数据集按照特定列进行分组的操作。它通常与聚合函数(如sum、count、avg等)一起使用,以便对每个组进行计算。

要使用group by,你可以使用pandas库中的DataFrame对象来处理数据。以下是一个示例:

import pandas as pd  # 创建一个示例数据集 data = {'Name': ['John', 'Mike', 'Sarah', 'John', 'Mike'],         'Age': [25, 30, 28, 25, 30],         'City': ['New York', 'Chicago', 'Los Angeles', 'New York', 'Chicago'],         'Salary': [50000, 60000, 55000, 50000, 55000]}  df = pd.DataFrame(data)  # 按照Name列进行分组,并计算每个组的平均薪资 grouped = df.groupby('Name')['Salary'].mean()  print(grouped) 

输出结果为:

Name John     50000.0 Mike     57500.0 Sarah    55000.0 Name: Salary, dtype: float64 

在上述示例中,我们使用group by将数据按照Name列进行分组,并计算每个组的平均薪资。结果中的每个组都以组名(Name列的唯一值)作为索引,并显示了对应组的平均薪资。

你还可以对多个列进行分组,如以下示例所示:

grouped = df.groupby(['Name', 'City'])['Salary'].sum()  print(grouped) 

输出结果为:

Name   City        John   New York      100000 Mike   Chicago       115000 Sarah  Los Angeles    55000 Name: Salary, dtype: int64 

在该示例中,我们按照Name和City两列进行分组,并计算每个组的薪资总和。结果中的每个组都以组名(Name和City的唯一组合)作为索引,并显示了对应组的薪资总和。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!