Python Pandas的groupby()用法详解
Pandas的groupby()函数是一种强大的方法,可以根据一个或多个列对DataFrame中的数据进行分组,并对分组数据应用不同的操作。它允许进行数据聚合、分组和转换,是数据分析的一个通用工具。
以下是使用groupby()的示例:
假设我们有一个包含“Country”、“Year”和“Population”列的DataFrame df:
import pandas as pd data = {"Country": ["USA", "USA", "Canada", "Canada", "Mexico", "Mexico"], "Year": [2010, 2011, 2010, 2011, 2010, 2011], "Population": [309, 311, 34, 35, 113, 115]} df = pd.DataFrame(data)
为了按国家分组并计算每个国家的总人口,我们可以使用groupby(),如下所示:
grouped = df.groupby("Country") total_population = grouped["Population"].sum() print(total_population)
这将输出:
Country Canada 69 Mexico 228 USA 620 Name: Population, dtype: int64
在这个例子中,我们按“Country”列对DataFrame进行了分组,并计算了每个组的“Population”列的总和。我们使用了sum()方法来应用操作到分组数据上。
我们还可以通过将列名列表传递给groupby()来按多个列进行分组,如下所示:
grouped = df.groupby(["Country", "Year"]) total_population = grouped["Population"].sum() print(total_population)
这将输出:
Country Year Canada 2010 34 2011 35 Mexico 2010 113 2011 115 USA 2010 309 2011 311 Name: Population, dtype: int64
在这个例子中,我们按“Country”和“Year”两列对DataFrame进行了分组,并计算了每个组的“Population”列的总和。
相关文章