Python Pandas透视表错误聚合Year列,如何指定聚合Amount列?
解决pivot_table错误聚合Year列的问题
嗨,这个问题的核心原因是pivot_table默认会对所有数值类型的列应用聚合函数——你的Year列是整数类型,所以它也被纳入了求和范围,导致结果不符合预期。
要强制只对Amount列求和,你只需要在pivot_table中明确指定values参数,告诉pandas你要聚合的目标列即可:
dfFFB = pd.pivot_table( dfFF, index=['Country'], columns=['Sector'], values=['Amount'], # 关键:指定只聚合Amount列 aggfunc='sum', fill_value=0 )
执行这段代码后,得到的透视表就只会针对Amount列按Country(行)和Sector(列)进行求和,不会再涉及Year列了。
用你提供的dfFF数据,执行后的结果会是这样的:
| Country | Amount |
|---|---|
| Charity | |
| UK | 328163 |
内容的提问来源于stack exchange,提问作者Nicholas
相关产品推荐
相关产品推荐

