さて、私は 4x2 numpy ndarray を持っています。それを辞書順に並べ替えたいと思います。つまり、配列がある場合
[[0,0],
[1,1],
[0,1],
[1,0]]
になってほしい
[[0,0],
[0,1],
[1,0],
[1,1]]
どうすればいいですか?
さて、私は 4x2 numpy ndarray を持っています。それを辞書順に並べ替えたいと思います。つまり、配列がある場合
[[0,0],
[1,1],
[0,1],
[1,0]]
になってほしい
[[0,0],
[0,1],
[1,0],
[1,1]]
どうすればいいですか?
numpy を使用できますlexsort
。ただし、Lexsort は、最後の列を主キーとして使用して並べ替えます。必要なものを取得する 1 つの方法は、列を明示的に指定することです。
x[np.lexsort((x[:,1], x[:,0]))]
# array([[0, 0],
# [0, 1],
# [1, 0],
# [1, 1]])