Использовать упорядоченные категориалы с порядком, определенным в параметре categories
:
months = ['April','May','June','July','August',
'September','October','November',
'December','January','February','March']
df['Month_name'] = pd.CategoricalIndex(df['Month_name'], ordered=True, categories=months)
При необходимости сортировка по Month_name
:
df1 = df.sort_values('Month_name')
Или по обоим столбцам:
df2 = df.sort_values(['CASH/TPA', 'Month_name'])
Или, если необходимо, Поворот :
df3 = df.pivot('Month_name','CASH/TPA','Total')