Добавление вычисляемого столбца в сводную таблицу 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) дать мне дополнительные вычисляемые столбцы

1 ответов


Это должно сделать это, предполагая, что data ваш поворотный фрейм данных:

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

добавление нового столбца в таблицу данных так же просто, как df['colname'] = new_series. Здесь мы назначаем его с запрошенной функцией, когда мы делаем это как векторную операцию, она создает новый ряд.