title: Use masks to retrieve submatrix in numpy
body: <p>Consider the following code</p>
  
  <pre><code>a = numpy.array([[1,2,3],[4,5,6],[7,8,9]])
  a[[True,True,False],[True,True,False]]
  </code></pre>
  
  <p>What I expect is a submatrix</p>
  
  <pre><code>array([[1, 2],
         [4, 5]])
  </code></pre>
  
  <p>but what I get is</p>
  
  <pre><code>array([1, 5])
  </code></pre>
  
  <p>I have figured out a method to retrieve the submatrix</p>
  
  <pre><code>a[np.ix_([True,True,False],[True,True,False])]
  </code></pre>
  
  <p>My question:</p>
  
  <blockquote>
    <p>Any other way we can do this more elegantly?</p>
  </blockquote>