Python “Numpy”;有点像;功能

Python “Numpy”;有点像;功能,python,sorting,numpy,Python,Sorting,Numpy,假设我有两个数组,v和w: v=np.arange(10) array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) w=np.random.random(10,) array([ 0.20224634, 0.19145386, 0.44607429, 0.53601637, 0.29148741, 0.62670435, 0.95371219, 0.63634805, 0.48733178, 0.17155278]) 我可以这样排序w: np

假设我有两个数组,
v
w

v=np.arange(10)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
w=np.random.random(10,)
array([ 0.20224634,  0.19145386,  0.44607429,  0.53601637,  0.29148741,
        0.62670435,  0.95371219,  0.63634805,  0.48733178,  0.17155278])
我可以这样排序
w

np.sort(w)
array([ 0.17155278,  0.19145386,  0.20224634,  0.29148741,  0.44607429,
        0.48733178,  0.53601637,  0.62670435,  0.63634805,  0.95371219])
我想以与
w
相同的方式对
v
进行排序。例如,使元素9移动到元素0,依此类推,直到
v
变为:

array([9, 1, 0, 4, 2, 8, 3, 5, 7, 6])
有没有一个简单的方法可以做到这一点,我错过了


如果没有,您将如何操作?

您可以使用
np.argsort
获取订单:

order = np.argsort(w)
然后对两个数组进行排序:

w = w[order]
v = v[order]