Pandas:通过groupby均值新建列
在本文中,我们将介绍如何使用Pandas通过groupby均值新建列。在数据分析和处理中,我们通常需要计算按组计算的平均值并将其添加到数据集的新列中。下面我们将逐步介绍如何使用groupby函数和mean函数来完成这个任务。
假设我们有一个包含以下列的数据框:Country, City, GDP, Population。我们想要计算每个国家的平均GDP,并将其添加到数据框的新列中。
首先,我们需要使用groupby函数将数据框按照Country列进行分组。代码如下所示:
grouped = df.groupby('Country')
接下来,我们需要使用mean函数计算每个组的平均GDP值。代码如下所示:
meanGDP = grouped['GDP'].mean()
现在我们已经得到了每个国家的平均GDP值,我们可以使用Pandas的merge函数将其合并到原始数据框中。代码如下所示:
result = pd.merge(df, meanGDP, on='Country')
最后,我们需要为新的平均GDP列取一个好记的名字,比如’MeanGDP’。代码如下所示:
result.rename(columns={'GDP_y': 'MeanGDP'}, inplace=True)
现在,如果我们输出新的数据框,我们可以看到我们成功地将每个国家的平均GDP值添加到了新的MeanGDP列中。
阅读更多:Pandas 教程
总结
通过使用Pandas的groupby函数和mean函数,我们可以轻松地计算按组计算的平均值并将其添加到数据集的新列中。这个技术通常用于数据分析和处理中,使我们可以更好地了解和分析数据。