Classificar linhas numpy.array por índices

Eu tenho 2Dnumpy.array e uma tupla de índices:

a = array([[0, 0], [0, 1], [1, 0], [1, 1]])
ix = (2, 0, 3, 1)

Como posso classificar as linhas da matriz pelos índices? Resultado esperado:

array([[1, 0], [0, 0], [1, 1], [0, 1]])

Eu tentei usarnumpy.take, mas funciona conforme o esperado apenas com matrizes 1D.