我创建了一个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)
,以便为我提供额外的计算列
答案 0 :(得分:5)
这应该这样做,假设data
是您的透视数据框:
data['Autopass(cb)%'] = data['Autopass(cb)'] / data['TotalCB'] * 100
data['Qd(cb)%'] = data['Qd(cb)'] / data['TotalCB'] * 100
向数据框添加新列就像df['colname'] = new_series
一样简单。在这里,我们为您分配了您所请求的功能,当我们将其作为矢量操作时,它会创建一个新系列。