一列被其他列分解

2024-04-29 12:26:03 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有以下数据帧:

    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%

我研究了密度函数和其他类似的函数,但没有弄清楚。你知道吗

任何帮助都将不胜感激!你知道吗


Tags: 数据函数channel例子密度ch1分销商distributor
1条回答
网友
1楼 · 发布于 2024-04-29 12:26:03

normalize一起使用crosstab

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

相关问题 更多 >