Сумма значений столбцов таблицы pivot_table - pandas
df = pd.DataFrame(result)
df_pivot = pd.pivot_table(
df,
index=["sizeoforchardholding", "nooforchardists"],
columns="fruit_plant_kind",
values=["sizeoforchardholding", "nooforchardists"],
aggfunc='sum', margins=True, margins_name='Sum',
fill_value=0,
).reset_index()
Я хочу найти сумму каждого столбца в конце, но когда я делаю это с помощью margin
, выдает ошибку.
Ошибка:
Survey Report Had an exception
Grouper for 'sizeoforchardholding' not 1-dimensional
Internal Server Error: /KindWise-Fruit-Survey-OrchardCount
как я могу найти сумму каждого столбца в конце.
Вот образец данных, который я получаю, если не добавляю margin
в вышеприведенный код.
S NO SIZE OF ORCHARD HOLDING NO. OF ORCHARDISTS ALMOND AONLA APPLE
1 0.5 to 1.0 Acre 1 0 0 800
2 0.5 to 1.0 Acre 2 506 0 550
3 0.5 to 1.0 Acre 3 0 0 235
4 0.5 to 1.0 Acre 36 0 0 11177
Вы можете использовать fruit_plant_count
для параметра values
вместо ["sizeoforchardholding", "nooforchardists"]
:
df_pivot = pd.pivot_table(df,
index=["sizeoforchardholding","nooforchardists"],
columns="fruit_plant_kind",
values="fruit_plant_count",
aggfunc='sum',
margins=True,
margins_name='Sum',
fill_value=0).reset_index().rename_axis(None, axis=1)
print (df_pivot)
sizeoforchardholding nooforchardists Almond Aonla Apple Sum
0 0.5 to 1.0 Acre 2 500 0 6 506
1 1.0 to 1.5 Acre 1 300 250 0 550
2 Sum 800 250 6 1056