При условии наличия большого числа ndarray
и индекса:
a = np.random.randint(0,4,(2,3,4))
idx = (1,1,1)
есть чистый способ получения 0D-массива a
в idx
?
Что-то эквивалентное
a[idx + (None,)].squeeze()
, но менее хакерское?
Обратите внимание, что @ filippo умный
a[idx][...]
не эквивалентно. Во-первых, это не работает для массивов объектов. Но если серьезно, он возвращает не подмассив, а новый массив:
b = a[idx][...]
b[()] = 7
a[idx] == 7
# False