我有一个多索引层次结构,设置如下:
import numpy as np
sectors = ['A','B','C','D']
ports = ['pf','bm']
dates = range(1,11)*2
wts, pchg = zip(*np.random.randn(20,2))
df = pd.DataFrame(dict(dates=dates,port=sorted(ports*10),
sector=np.random.choice(sectors,20), wts=wts,
pchg=pchg))
df = df.set_index(['port','sector','dates'])
df = df.unstack('port')
df = df.fillna(0)
我想按dates
和{pchg
*wts
我已经看过医生了,但我正在努力弄清楚。在
非常感谢任何帮助。谢谢
您确实不需要取消堆叠就可以得到想要的结果,使用
product
方法来进行所需的乘法。循序渐进:从该数据帧开始:
我们可以先用^{} 方法做
^{pr2}$pchg * wts
部分,乘以轴1,但仅限于第二个级别:然后我们可以按
dates
分组(不再需要按端口分组)并取和:其输出与
相关问题 更多 >
编程相关推荐