Предположим, у меня есть Numpy массив целых чисел (может быть как положительным, так и отрицательным и содержать дубликаты) следующим образом:Переоформления массив целых чисел в диапазоне NumPy массива
arr = array([-23, 1983, 2344, 323, -34, 323, -234432, 22343])
Теперь я хочу, чтобы создать новый массив arr_remapped
, так что все целые получить новый номер (от нуля) в зависимости от их размера в массиве, как так:
arr_remapped = array([2, 4, 5, 3, 1, 3, 0, 6])
arr_remapped
будет Contà в числах в диапазоне [0, number_of_unique_numbers-1]
и может содержать дубликаты.
Как это сделать, используя только NumPy (или, возможно, Scikit-learn) в нескольких строках кода?
Это похоже на вопрос this, но я только хочу использовать NumPy здесь.
Если в списке нет дубликатов, да, но он сказал, что он может содержать дубликаты, и у них должен быть одинаковый номер. – MSeifert