Skip to main content
 首页 » 编程设计

python之pandas 将 groupby 值转换为列名

2025年05月04日15del

我有一个 pandas 表,其中有很多行,其中包含贷款到期年份(任何给定年份可以有多个贷款)、名义贷款和贷款类型(固定利率/ float 利率)。

我想将一家公司的债务塔提取到数据框表中,如下所示:

年、固定利率、 float 利率
2018 年,给定年份的 sumofallfixed 贷款,sumofallfloatloans。

MaturityYear 类型名义(MM)
0 2020 固定 600.0
1 2021 固定 750.0
2 2021 float 250.0
3 2025 固定 700.0

转换成
年份、固定、 float
2020, 600, 0
2021, 750, 250
2025 700, 0

我怎样才能用 pandas 做到这一点?

非常感谢, 托尼

请您参考如下方法:

这是一个关键的解决方案,即

df.pivot(index='Year',columns='Type',values='Notional(MM)').fillna(0) 
Type  FIXED  FLOATING 
Year                  
2020  600.0       0.0 
2021  750.0     250.0 
2025  700.0       0.0 

If needed sum i.e

df.pivot_table(index='Year',columns='Type',values='Notional(MM)',aggfunc='sum').fillna(0)