title: Slicing grouped dataframes carries more rows than expected
body: <p>I am trying to filter a dataframe, which has already been produced by a <code>groupby()</code>.
  An example of the grouped dataframe is below:</p>
  
  <pre><code>all_dists          less  more
  district answer            
  N        yes        9.0   1.0
           no         0.0   0.0
           maybe      0.0   0.0
  W        yes        0.0   0.0
           no         0.0   0.0
           maybe      1.0   6.0
  S        yes        0.0   0.0
           no         0.0   0.0
           maybe      0.0   0.0
  E        yes        0.0   0.0
           no         0.0  15.0
           maybe      4.5   0.0
  </code></pre>
  
  <p>If I filter "yes" and "less" I get the desired result:</p>
  
  <pre><code>grouped_df.loc[(slice(None), slice('yes')), 'less']
  &gt;&gt;&gt;
  all_dists          less  more
  district answer            
  N        yes        9.0   1.0
  W        yes        0.0   0.0
  S        yes        0.0   0.0
  E        yes        0.0   0.0
  </code></pre>
  
  <p>But if I filter "no" or "maybe", then it will carry the previous row(s) with it:</p>
  
  <pre><code>grouped_df.loc[(slice(None), slice('no')), 'less']
  all_dists          less  more
  district answer            
  N        yes        9.0   1.0
           no         0.0   0.0
  W        yes        0.0   0.0
           no         0.0   0.0
  S        yes        0.0   0.0
           no         0.0   0.0
  E        yes        0.0   0.0
           no         0.0  15.0
  </code></pre>
  
  <p>My aim is to calculate summatios in the filtered dataframes, but I can't seem to figure out what is wrong with slicing.</p>
  
  <p>Help, please ^_^</p>