3

さて、私は 4x2 numpy ndarray を持っています。それを辞書順に並べ替えたいと思います。つまり、配列がある場合

[[0,0],
[1,1],
[0,1],
[1,0]]

になってほしい

[[0,0],
[0,1],
[1,0],
[1,1]]

どうすればいいですか?

4

1 に答える 1

5

numpy を使用できますlexsort。ただし、Lexsort は、最後の列を主キーとして使用して並べ替えます。必要なものを取得する 1 つの方法は、列を明示的に指定することです。

 x[np.lexsort((x[:,1], x[:,0]))]

 # array([[0, 0],
 #   [0, 1],
 #   [1, 0],
 #   [1, 1]])
于 2015-01-21T18:35:31.767 に答える