我有一个带有多级列索引的数据框,其中所有值都是浮点数,我想合并多级索引中第一级内的值。请参见下面的详细信息。
first bar baz foo
second one two one two one
A 0.895717 0.805244 1.206412 2.565646 1.431256
B 0.410835 0.813850 0.132003 0.827317 0.076467
C 1.413681 1.607920 1.024180 0.569605 0.875906
first bar baz foo
A (0.895717+0.805244) (1.206412+2.565646) 1.431256
B (0.410835+0.813850) (0.132003+0.827317) 0.076467
C (1.413681+1.607920) (1.024180+0.569605) 0.875906
这些值实际上是相加的(我只是懒得做这个 :))。最重要的是,我只想升级(我猜应该是更高级别),并且在索引中添加所有这些值。请告诉我一个好方法来做到这一点。谢谢!
df.sum(axis=1, level='first')
在 OP 的情况下也可以工作,因为索引级别 0 有一个名称。 - minsdf.sum(levels=...)
已经被弃用,并将在未来版本中删除。df.groupby(levels=...).sum()
是正确的方法。 - Antimon