Manipulating multi-indices for a pandas dataframe
Ordering

You can achieve this by changing the datatype to ordered categorical:

df['DofWeek'] = pd.Categorical(
                df['DofWeek'], 
                categories=['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'], 
                ordered=True)


And then sorting the index:

df = df.sort_index()




Error

The issue with dataframe.query('DofWeek == 'Saturday') is bad quote encapsulation. You could solve it with e.g. 'DofWeek == "Saturday"'