我有一个类似下面的数据框:
channel name conv_perc
FTV_FB_VID 0.038069
FB_DISP_VID 0.139276
FTV_FB_DISP_VID 0.033426
DISP 0.056639
FTV_DISP 0.084494
我希望您能够将
channel name
按照_
进行拆分,并创建与字符串中的标记数相同的列,名称相同,并使用conv_perc
中的相应值进行更新。但是,conv_perc
中的值需要首先除以channel name
中的通道数,然后复制到列下面。我的想法是预先计算唯一通道并创建列;然后,逐行迭代并将
conv_perc
中的值复制到仅在相应的channel name
单元格中的那些列中。我无法在不使用循环的情况下完成它。我要寻找一个向量化的解决方案。预期输出:
channel name conv_perc FTV FB VID DISP PTV
FTV_FB_VID 0.038069 0.0127 0.0127 0.0127 0 0
FB_DISP_VID 0.139276 0. 0.0464 0.0464 0.0464 0
FTV_FB_DISP_VID 0.033426 0.0084 0.0084 0.0084 0.0084 0
DISP 0.056639 0.0566
FTV_DISP 0.084494 0.0422 0.0422
请注意,FTV和其他列中的值是通过拆分“频道名称”时产生的标记长度进行除法计算的。