Python Pandas 加权虚拟变量?

问题描述

有没有办法使用熊猫获得加权虚拟变量? 我有两个数据框,一个带有分类值,另一个带有连续变量...

df1 = pd.DataFrame(data=[[1.,3.,2.],[2.,1.],[0.],[0.,2.,2.]])
df2 = pd.DataFrame(data=[['a','c','d'],['a','b'],['c'],['b','b']])

这个想法是获得一个虚拟数据框,但带有加权虚拟变量......意思是: 对于第 0 行,1.0 + 3.0 + 2.0 = 100%...虚拟变量应该是,而不是 0 和 1:

a = 1.0/6.0
c = 3.0/6.0
d = 2.0/6.0

并且每个结果都应该是虚拟数据框。

我实际上拥有的是 0 或 1,如果是 NaN 则为 0,如果存在则为 1...

dummies = pd.get_dummies(df2,columns=[0,1,2])

And this is my output

我打算做的是获得相同的矩阵......但是,而不是 1s 和 0s 获得加权虚拟变量...... a、b 和 c 对我的模型具有不同的重要性......

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)