import pandas as pd
df = pd.DataFrame({
'customer': [1,2,1,3,1,2,3],
"group_code": ['111', '111', '222', '111', '111', '111', '333'],
"ind_code": ['A', 'B', 'AA', 'A', 'AAA', 'C', 'BBB'],
"amount": [100, 200, 140, 400, 225, 125, 600],
"card": ['XXX', 'YYY', 'YYY', 'XXX', 'XXX', 'YYY', 'XXX']})
With the above data frame , I wanted the output as below :
For each card number
, I wanted the below records :
Card number
, % of Amount spent of Group code 1
, % of Amount spent on Group code 2
, ….so on for different Group code
% of Amount spent on any group = (Total amount spend on the card / Amount spend on that group ) * 100
Also, on larger picture, I wanted to know the Top 5 Groups for each card where the amount is spent ?
It's basically 2 queries , It will be great if anyone can help me.
Note : The code given is just for understanding how my data frame looks like.