Python Ошибка IndexE: индекс 612472 выходит за пределы оси 0 с размером 612472 - PullRequest
0 голосов
/ 25 апреля 2020

заранее извиняюсь python не моя сильная сторона. Я пытаюсь использовать решение, найденное в:

Удалить элементы из одного массива, если они присутствуют в другом массиве, сохранить дубликаты - NumPy / Python

Это Я имею очень большой одномерный массив в форме (21684142,), и я хочу удалить любые элементы из этого массива, которые появляются во втором массиве в форме (612472,). Приведенное выше решение выглядит идеально для этого, однако, когда я запускаю код ниже:

friendsArray = np.array(friendsMap)
friendsArray.sort()
alreadyArray = np.array(alreadyMap)
alreadyArray.sort()
finalarray  = friendsArray[alreadyArray[np.searchsorted(alreadyArray,friendsArray)] !=  friendsArray]

Это приводит к ошибке ниже:

IndexError                                Traceback (most recent call last)
<ipython-input-35-c0c68109f51f> in <module>
  4 alreadyArray.sort()
  5 
  ----> 6 finalarray  = friendsArray[alreadyArray[np.searchsorted(alreadyArray,friendsArray)] !=  
  friendsArray]

  IndexError: index 612472 is out of bounds for axis 0 with size 612472

Любые идеи или указатели, где go следующий? Я попытался изменить массив без успеха. Буду признателен за любую оказанную помощь.

Нейл.

...