У меня есть многоиндексная сводная таблица, которая выглядит так, когда я ее экспортирую в Excel:
sum
Amount
Type of Transaction COGS Revenue Margin
Name
Alex 12 40 28
Ben 6 25 19
Dan 10 30 20
Я хочу, чтобы она включала процент маржи следующим образом:
sum
Amount
Type of Transaction COGS Revenue Margin Margin%
Name
Alex 12 40 28 .7
Ben 6 25 19 .76
Dan 10 30 20 .67
Я получил столбец «Маржа», добавив «margins = True» при создании сводной таблицы.
Я попытался создать новый столбец, опустив маржу по доходу, но получил KeyError: 'Revenue'
.Я попытался сделать это с:
graph["Margin%"] = graph["Margin"] / graph ["Revenue"]
Где graph - это имя моего dataframe.Я также попытался использовать функцию div (), но не смог заставить ее работать.
graph = pd.pivot_table(df, index=["Name"], columns=["Type of Transaction"], aggfunc=[np.sum], margins = True)
graph = graph.rename(columns={"All":"Margin"})
graph["Margin%"] = graph["Margin"] / graph ["Revenue"]