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

Pyn*_*bie 7 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
Run Code Online (Sandbox Code Playgroud)

我想知道如何添加计算列,以便我使用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%
Run Code Online (Sandbox Code Playgroud)

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

Kor*_*rem 6

这应该这样做,假设data是您的数据框:

data['Autopass(cb)%'] = data['Autopass(cb)'] / data['TotalCB'] * 100
data['Qd(cb)%'] = data['Qd(cb)'] / data['TotalCB'] * 100
Run Code Online (Sandbox Code Playgroud)

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