指定Order numpy数组

mik*_*ike 1 python arrays sorting numpy

我正在尝试按照另一个数组的顺序放置一个数组.例如,如果我有:

arr1 = np.array(['a', 'b', 'c'])
index = np.array([2, 1, 0])
Run Code Online (Sandbox Code Playgroud)

我期望的结果,arr2,是['c','b','a'],这样:

arr2[index[i]] == arr1[i]
Run Code Online (Sandbox Code Playgroud)

jte*_*ace 6

您只需将选择器数组作为索引传递给字符数组:

>>> import numpy as np
>>> arr1 = np.array(['a', 'b', 'c'])
>>> index = np.array([2, 1, 0])
>>> arr1[index]
array(['c', 'b', 'a'], 
      dtype='|S1')
Run Code Online (Sandbox Code Playgroud)