我有这个 np 数组:
array([[0, 0, 0, 0, 4, 4],
[2, 3, 5, 6, 5, 6]])
我想按第二行对其进行排序,以便第一行进行相应的调整。所以输出应该是这样的:
array([[0, 0, 0, 4, 0, 4],
[2, 3, 5, 5, 6, 6]])
有没有快速的方法来做到这一点?
您可以使用np.argsort()
获取第二行排序版本的索引并使用这些索引重新排列数组的列:
In [38]: a = np.array([[0, 0, 0, 0, 4, 4],
...: [2, 3, 5, 6, 5, 6]])
...:
In [39]: a[:, np.argsort(a[1])]
Out[39]:
array([[0, 0, 0, 4, 0, 4],
[2, 3, 5, 5, 6, 6]])
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句