2014-10-11 149 views
6

我創建了一個熊貓數據框,然後將其轉換爲數據透視表。將計算列添加到熊貓數據透視表中

我的數據透視表看起來是這樣的:

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(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

你是否試圖編寫任何代碼? – 2014-10-11 12:36:44

+4

顯然有些代碼已經寫成@Tony:你沒有進入在熊貓中製作數據透視表而沒有一些代碼的階段。 您的評論是無用的。 – 2014-10-11 12:37:51

+0

感謝Oxinabox。 @Tony是的,我使用read_csv將數據導入數據框,並使用pivot_table函數創建數據透視表。 – Pynewbie 2014-10-11 13:16:51

回答

2

這應該這樣做,假設data是您的擺動數據框:

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

將新列添加到數據框與df['colname'] = new_series一樣簡單。在這裏,我們將它分配給您的請求函數,當我們將它作爲矢量操作時,它會創建一個新的系列。

+0

感謝Korem它工作:)。感謝您的時間和精力 – Pynewbie 2014-10-11 13:13:10