python - 按内部数组的长度对 numpy 数组的 numpy 数组进行排序

标签 python arrays sorting numpy

如果我有一个 numpy 数组,其中每个元素都是另一个不同长度的 numpy 数组(因此不是 ndarray),如何通过内部数组的长度降序对外部数组进行排序?

例如:

a = np.array([np.array([1]), np.array([1, 2, 3]), np.array([1, 2])])

将排序为:

[[1, 2, 3], [1, 2], [1]]

最佳答案

另一种方法是按照旧的 Python 列表方式按长度排序,然后重建数组。

np.array(sorted(b, key=len, reverse=True))

无论如何,留在 NumPy-land 可能不会给你带来任何好处。

关于python - 按内部数组的长度对 numpy 数组的 numpy 数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47271229/

相关文章:

python - 使用列表理解对数据帧的子集进行切片

python - 使用pip安装时编译出错

javascript - 我如何访问 JSON 文档中的子元素

控制到达 C 中非 void 函数的末尾

类中的 Python Tkinter 滚动条

python - 如何有效地调试在计算密集型程序结束时调用的部分代码?

objective-c - 在iOS编程中保存/检索数组的最佳方法是什么

javascript - 对于按属性值

c++ - 有序列表的最佳数据结构(性能)

c# - 根据每个哈希表中的键对哈希表的 ArrayList 进行排序