我有一张客户信息表(coper)和资产配置表(asset)。
A = [[1,2],[3,4],[5,6]]
idx = ['coper1','coper2','coper3']
cols = ['asset1','asset2']
df = pd.DataFrame(A,index = idx, columns = cols)
所以我的数据看起来像
asset1 asset2
coper1 1 2
coper2 3 4
coper3 5 6
我想对它们进行线性优化(我有一些约束,例如所有资产_i的总和≤手头金额_i
和coper_j的总和=价格_j
)
因此,我必须将这个二维矩阵转换为一维向量。使用melt很容易实现。
df2 = pd.melt(df,value_vars=['asset1','asset2'])
但是现在,当我试图使其不再融化时,我得到了一个有很多空格的6行数组!
df2.pivot(columns = 'variable', values = 'value')
variable asset1 asset2
0 1.0 NaN
1 3.0 NaN
2 5.0 NaN
3 NaN 2.0
4 NaN 4.0
5 NaN 6.0
使用melt时是否有办法保留我的索引中的 "coper" 部分?