groupby.mean函数除以分组前计数而不是分组后计数

2024-09-29 22:35:30 发布

您现在位置:Python中文网/ 问答频道 /正文

因此,我有以下贸易流数据集,按报告国和伙伴国跟踪进出口情况。删除一些不需要的列后,我编辑数据框,以便显示A国和B国之间的贸易流。留给我的是这样的东西:

[我的数据帧图像]1

我的问题是,我希望能够计算每个合作伙伴国家(“合作伙伴代码”)每年的进出口平均值,但当我运行以下程序时:

x = df[(df.location_code.isin(["IRN"])) & df.partner_code.isin(['TCD'])]

grouped = x.groupby(['partner_code']).mean()

最后,我得到的是所有出口的平均值除以所有存在“产品id”的实例(这个数字要高得多),而不是所有年份的进口或出口总额的平均值

取以下5个出口值的平均值得出的平均值不正确:

5 export valuesWrong average


Tags: 数据代码图像程序编辑dfpartner报告
1条回答
网友
1楼 · 发布于 2024-09-29 22:35:30

在熊猫中,我们可以groupby多个栏目,根据我的理解,您希望按合作伙伴、国家和年份分组

下面这句话可以:

df = df.groupby(['partner_code', 'location_code', 'year'])['import_value', 'export_value'].mean()

请注意,生成的数据帧具有MultiIndex索引。 供参考,正式文件:^{} documentation

相关问题 更多 >

    热门问题