Ваш код должен возвращать то, что вы хотите, если вы просто раскомментируете stacked = pivot.stack(0)
Если вы хотите, чтобы столбец индекса был отсортирован как изображение и имел имя Values
, вы можете сделать это:
# Given
df = pd.DataFrame({"AgentName": ['airlines_all_flightdetails', 'airlines_all_flightdetails', 'airlines_all_flightdetails', 'airlines_all_flightdetails', 'airlines_all_flightdetails', 'airlines_all_flightdetails', 'airlines_all_flightdetails', 'airlines_all_flightdetails', 'airlines_all_flightdetails', 'airlines_all_flightdetails'],
"OutputTableName": ['carrier=xx', 'carrier=xx', 'carrier=xx', 'carrier=xx', 'carrier=xx', 'carrier=xx', 'carrier=xx', 'carrier=xx', 'carrier=xx', 'carrier=xx'],
"LastModified": ['10/13/2018', '10/13/2018', '10/12/2018', '10/12/2018', '10/11/2018', '10/11/2018', '10/10/2018', '10/09/2018', '10/08/2018', '10/07/2018'],
"Size": [540722, 1995963, 541308, 2179389, 469444, 1519627, 472355, 472622, 1691951, 2012013]
})
# Given
pivot = df.pivot_table(index=['AgentName', 'OutputTableName'], values='Size', columns='LastModified', aggfunc=[np.sum, 'count'])
# Moves 'Values' from columns to index
stacked = pivot.stack(0)
# sorts index to relfect image
stacked.sort_index(level = 2, ascending = False, inplace = True)
# renames inner index to 'Values'
stacked.index.rename('Values', level = 2, inplace = True)
# rename inner index values
stacked.rename(index = {
'sum' : 'Sum of Size',
'count' : 'Count of OutputFileName'
})
Должно возвращать следующее:
