Giving this data:
data = [{'Group1': 'A', 'Group2 date':'01/20/20', 'value1':0, 'value2':1},
{'Group1': 'A', 'Group2 date':'01/25/20', 'value1':0, 'value2':3},
{'Group1': 'A', 'Group2 date':'02/28/20', 'value1':0, 'value2':2},
{'Group1': 'B', 'Group2 date':'01/25/20', 'value1':0, 'value2':1},
{'Group1': 'B', 'Group2 date':'01/27/20', 'value1':2, 'value2':2},
{'Group1': 'C', 'Group2 date':'01/29/20', 'value1':0, 'value2':5},
{'Group1': 'C', 'Group2 date':'01/30/20', 'value1':2, 'value2':6}]
I have a pivot table created with pandas using:
pivot = pd.pivot_table(
df,
index=["Group1", "Group2 date"],
values=["value1", "value2"],
aggfunc={"value1":np.sum, "value2":np.sum},
)
and I'm getting a table like this:
value1 value2
Group1 Group2 date
A 01/20/20 0 1
01/25/20 0 3
01/28/20 0 2
B 01/25/20 0 1
01/27/20 2 2
C 01/29/20 0 5
01/30/20 2 6
But I need first the table sorted by "value2" with the highest values and then "Group2 date" be always descending to get something like:
value1 value2
Group1 Group2 date
C 01/30/20 2 6
01/29/20 0 5
A 01/28/20 0 2
01/25/20 0 3
01/20/20 0 1
B 01/27/20 2 2
01/25/20 0 1
Is possible?, how?