我创建了一个 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
是您的旋转数据框,这应该可以做到:
data['Autopass(cb)%'] = data['Autopass(cb)'] / data['TotalCB'] * 100
data['Qd(cb)%'] = data['Qd(cb)'] / data['TotalCB'] * 100
向数据框添加新列就像df['colname'] = new_series
一样简单。在这里,我们为它分配了您请求的函数,当我们将其作为向量操作执行时,它会创建一个新系列。
关于python - 将计算列添加到 pandas 数据透视表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26313881/