python - 字典排序浮点数组python

原文 标签 python sorting numpy lexicographic

好的,所以,我有一个 4x2 numpy ndarray,我想按字典顺序对其进行排序。也就是说,如果我有数组

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

我想让它变成
[[0,0],
[0,1],
[1,0],
[1,1]]

我该怎么做呢?

最佳答案

您可以使用 numpy 的 lexsort 。但是,Lexsort 使用最后一列作为主键进行排序。获得所需内容的一种方法是明确指定列:

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

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

关于python - 字典排序浮点数组python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28073957/

相关文章:

java - Python子进程调用预编译的Java

ios - 追加数组并删除重复项,而无需更改 objective-c 中的顺序

python - 将具有多个结构的PDB文件解析为一个数组

python - 用函数变换集合的高效算法

Python dt.replace(tzinfo=) 不会改变时区

python - Python扭曲的elasticsearch连接

algorithm - 为什么我们对排序一个已经排序的文件需要多长时间感兴趣?

javascript - 更改键后如何在数组中移动对象

python - 如何为输入列表重复函数?

python - 将numpy数组另存为jpg格式的io.BytesIO