熊猫多重索引:将所有列除以一列

我有一个表单的数据框results

TOTEXPPQ TOTEXPCQ FINLWT21
年季
13 1 9.183392e+09 5.459961e+09 1271559.398
2.907887e+09 1.834126e+09 481169.672

我试图将所有(前两列)列除以最后一列。我的尝试失败了

weights=results.pop('FINLWT21'))
结果/权重

但我明白了

ValueError:无法在未指定级别和名称重叠的情况下加入

我不明白:索引中有重叠的名称:

weights.head()
年季
13    1          1271559.398
2           481169.672

是否有更好的方法来进行这种划分?我是否需要重置索引

必须指定分割轴(使用div方法):

[11]on

:results.div(权重,轴=0)
Output[11]:
TOTEXPPQ TOTEXPCQ
年季
13   1        7222.149445  4293.909517
2        6043.371329  3811.807158

默认值为axis=1,结果和权重的索引名不重叠,因此会显示错误消息。

发表评论