python – 将计算列添加到pandas数据透视表

我创建了一个pandas数据框,然后将其转换为数据透视表.

我的数据透视表看起来像这样:

Operators   TotalCB     Qd(cb)  Autopass(cb)
Aircel India    55        11       44
Airtel Ghana    20        17        3
Airtel India    41         9        9
Airtel Kenya    9          4        5
Airtel Nigeria  24        17        7
AT&T USA        18        10        8

我想知道如何添加计算列,以便我使用Autopass%(Autopass(cb)/ TotalCB * 100)获取我的数据透视表,就像我们能够使用计算字段选项在Excel中创建它们一样.

我希望我的数据透视表输出如下所示:

Operators   TotalCB     Qd(cb)  Autopass(cb)    Qd(cb)% Autopass(cb)%
Aircel India    55          11    44             20%     80%
Airtel Ghana    20          17     3             85%     15%
Airtel India    41          29     9             71%     22%
Airtel Kenya     9           4     5             44%     56%
AT&T USA        18          10     8             56%     44%

如何定义计算百分比列的函数以及如何将该函数应用于我的两列,即Qd(cb)和Autopass(cb),以便为我提供额外的计算列

最佳答案
这应该这样做,假设数据是您的透视数据帧:

data['Autopass(cb)%'] = data['Autopass(cb)'] / data['TotalCB'] * 100
data['Qd(cb)%'] = data['Qd(cb)'] / data['TotalCB'] * 100

向数据框添加新列就像df [‘colname’] = new_series一样简单.在这里,我们为您分配了您所请求的功能,当我们将其作为矢量操作时,它会创建一个新系列.

转载注明原文:python – 将计算列添加到pandas数据透视表 - 代码日志