假设我有以下数据框:
distributor channel
1 Warner CH1
2 Warner CH2
3 Warner CH2
4 Warner CH3
5 Columbia CH4
我想要的是在每个简单的示例中获得每个分销商的渠道分配:
distributor CH1 CH2 CH3 CH4
1 Warner 25% 50% 25% 0%
2 Columbia 0% 0% 0% 100%
我研究了密度函数和其他类似函数,但无法弄清楚.
任何帮助将不胜感激!
解决方法:
使用交叉表进行规范化
pd.crosstab(df.distributor,df.channel,normalize='index')
Out[506]:
channel CH1 CH2 CH3 CH4
distributor
Columbia 0.00 0.0 0.00 1.0
Warner 0.25 0.5 0.25 0.0