熊猫多指标:由一列
问题描述:
除以所有列我具有形式熊猫多指标:由一列
TOTEXPPQ TOTEXPCQ FINLWT21
year quarter
13 1 9.183392e+09 5.459961e+09 1271559.398
2 2.907887e+09 1.834126e+09 481169.672
的数据帧results
和我试图通过最后一个来划分所有(前两个)列。我的尝试是
weights = results.pop('FINLWT21')
results/weights
,但我得到
ValueError: cannot join with no level specified and no overlapping names
哪个我不明白:有索引重叠名称:
weights.head()
year quarter
13 1 1271559.398
2 481169.672
也许有更好的方式来做到这个部门?我是否需要来重置索引?
答
你必须指定轴线为除(与div
法):
In [11]: results.div(weights, axis=0)
Out[11]:
TOTEXPPQ TOTEXPCQ
year quarter
13 1 7222.149445 4293.909517
2 6043.371329 3811.807158
默认为轴线= 1,并将结果列和权重索引名不重叠,因此错误消息。
我刚刚得到'ValueError:传递值的形状是(1,8),索引暗示(4,8)'。你如何将它映射到所有列? – josh 2016-08-16 13:53:57
@josh我怀疑你想使用大小(8,)而不是(1,8)的东西? – 2016-08-16 18:01:45