Лучший способ сделать так, чтобы 1 индексирование оставалось пустым - PullRequest
0 голосов
/ 08 ноября 2019

Я пытаюсь выяснить, как лучше всего исключить индексирование с помощью numpy, это желаемое поведение:

import numpy as np

a = np.random.randint(0,10,size=10)
print(a)

def fun(x, xs):
    print(x,xs) #do some stuff

for i in range(a.shape[0]):
    fun(a[i], a[np.arange(a.shape[0]) != i]) #this is all I can think of, but its horrid!

Есть ли лучший, более эффективный способ сделать это?

РЕДАКТИРОВАТЬ: Чтобы уточнить, вопрос, который, как мы надеемся, немного яснее:

У меня есть массив, и я хочу представление, в котором отсутствует 1 или более элементов в middle , напримерa = [1,2,3,4,5,...] до a = [1,2,4,5,...]. Согласно здесь причудливое индексирование / маскирование создает копию массива, я хочу избежать этого и избежать создания большого индексного массива. Заранее спасибо за помощь!

...