Указать Порядковый массив - PullRequest
1 голос
/ 14 марта 2012

Я пытаюсь разместить массив в порядке другого массива. Например, если у меня есть:

arr1 = np.array(['a', 'b', 'c'])
index = np.array([2, 1, 0])

Мой желаемый результат, arr2, это ['c', 'b', 'a'], такой что:

arr2[index[i]] == arr1[i]

Ответы [ 2 ]

6 голосов
/ 14 марта 2012

Вы можете просто передать массив селектора как индекс в массив символов:

>>> import numpy as np
>>> arr1 = np.array(['a', 'b', 'c'])
>>> index = np.array([2, 1, 0])
>>> arr1[index]
array(['c', 'b', 'a'], 
      dtype='|S1')
1 голос
/ 14 марта 2012

Попробуйте это:

[arr1[i] for i in index]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...