You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用年度均值汇总Python DataFrame中的蜜蜂种群数据?

问题原因

你第一次执行的bees.groupby(['year'])['numcol'].mean()返回的是单维度Series对象,不是DataFrame结构,所以后续直接追加列的操作无法得到预期的多列汇总表,同时多次重复执行groupby也会产生不必要的性能开销。

最优解决方案

一次性对目标列执行分组聚合即可,添加as_index=False参数可以让年份保留为普通列,符合常规汇总表的使用习惯:

usa = bees.groupby('year', as_index=False)[['numcol', 'yieldpercol', 'totalprod']].mean()

分步实现的修正方案

如果你需要分步计算各列均值,只需要第一次分组时就返回DataFrame格式即可:

# 用双层方括号取列,确保返回的是DataFrame而非Series
usa = bees.groupby('year')[['numcol']].mean()
usa['yieldpercol'] = bees.groupby('year')['yieldpercol'].mean()
usa['totalprod'] = bees.groupby('year')['totalprod'].mean()

# 如果需要把年份从索引转为普通列,新增下面这行即可
usa = usa.reset_index()

内容的提问来源于stack exchange,提问作者Michael Schulte

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 06:45:05