Описание тега numpy-indexing

вопросы, связанные с индексацией объектов numpy ndarray
0 ответов

Выбор многомерных целочисленных индексов в numy ndarray

Мне трудно понять, какие правила необходимы для обеспечения выбора с помощью многомерных индексов в ndarrays. Допустим, у меня есть массив 4dim. Я хотел бы "сжать" массив, выбрав наименьшие значения в 1-м измерении (важно сохранить информацию о том,…
13 мар '18 в 11:55
1 ответ

Заменить хвост ndarray в зависимости от состояния

У меня есть многомерный массив. Как только оно будет иметь критическое значение в последнем измерении, я хотел бы изменить хвост измерения. np.random.seed(100) arr = np.random.uniform(size=100).reshape([2,5,2,5]) # array([[[[ 0.54340494, 0.27836939,…
0 ответов

Многомерная индексация с NumPy

Скажем, у меня есть следующие массивы: import numpy as np np.random.seed(100) fp = np.random.rand(4000, 5) ix = np.random.randint(0, 5, (3, 3)) fp array([[ 0.54340494, 0.27836939, 0.42451759, 0.84477613, 0.00471886], [ 0.12156912, 0.67074908, 0.8258…
13 апр '18 в 17:46
1 ответ

Трансляция операций с индексами в NumPy

Как я могу взять элементы из массива NumPy с учетом нескольких индексных массивов с широковещательной рассылкой? Или: как я могу упростить / векторизовать этот цикл: elems = np.random.rand(3, 10, 7) # shape N x I x M ind = np.array([[1, 2], [3, 4], …
16 фев '18 в 14:15
0 ответов

Неопределенность индексации NumPy в 3D-массивах

У меня есть следующий 3D массив формы In [159]: arr = np.arange(60).reshape(3, 4, 5) И я пытаюсь выполнить расширенную индексацию для извлечения подмассива, например: # behaves as expected In [160]: arr[[1, 2], :, 1].shape Out[160]: (2, 4) В следующ…
1 ответ

Numpy 2d array - выбрать несколько элементов без цикла for

Я поддерживаю некоторый код, и я сталкиваюсь с чем-то вроде: travel_time_vec = np.zeros(...) for v in some_indexes: # some_indexes is a list of row indexes traveltimes = traveltime_2d_array[v, list_of_column_indexes] best_index = np.argmin(traveltim…
28 май '18 в 19:10
0 ответов

Необычное индексирование NumPy (Python)

У меня есть 3D-массив (A) с формой (64, 64, 10), и у меня есть 2D-массив (B) целых чисел с формой (64, 64) Теперь я хочу использовать целые числа в B в качестве индексов для третьего измерения в A. Поэтому для каждого (x, y) я хочу значение A[x, y, …
12 янв '18 в 13:24
2 ответа

Python: Центрирование объектов в массиве Numpy

Я пытаюсь нормализовать некоторые значения в массиве со следующей формой: import numpy as np X = np.random.rand(100, 20, 3) Эти данные говорят, что для каждого из 20 наблюдений существует 100 временных отметок, где каждое наблюдение имеет 3 размерны…
16 окт '18 в 13:36
0 ответов

Написание векторизованного кода для следующего цикла

Это цикл, который мы должны векторизовать: for i in range(num_train): dW[y[i]] -= X[i] Размеры векторов следующие: y - num_train,1 X - num_train,3073 dW - 10,3073 Я использовал следующий расширенный метод индексации, который, кажется, правильно рабо…
03 ноя '18 в 19:21
2 ответа

Массив пустых индексов выбрасывает исключение

Может кто-нибудь указать на ошибку в коде ниже? Последняя строка продолжает выдавать ошибку: tmp = img1[coords] IndexError: index 409 is out of bounds for axis 0 with size 352 Я смещаю индексы только на 10, так что я не понимаю, как внезапно я вышел…
09 май '18 в 05:08
1 ответ

Как я могу предоставить синтаксический сахар для нарезки массива numpy?

Я хотел бы написать более читаемый код, выполнив что-то вроде: import numpy as np SLICE_XY = slice(0, 2) SLICE_Z = slice(2, 3) data = np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8], [9, 10, 11]]) xy = data[:, SLICE_XY] z = data[:, SLICE_Z] Тем не менее, …
05 окт '18 в 22:21
3 ответа

Индекс питона в 2d матрице

Учитывая следующий код: import numpy as np mat = np.arange(1,26).reshape(5,5) Мое понимание было следующие строки идентичны: mat[:3][1:2] mat[:3,1:2] Но это не так. Зачем?
14 июн '18 в 07:57
1 ответ

Эффективно назначьте ноль нескольким столбцам в каждой строке двумерного массива

Я хочу присвоить ноль двумерной матрице, где для каждой строки у нас есть обрезанный столбец, после которого следует установить ноль. Например, здесь мы имеем матрицу A размером 4x5 с обрезанными столбцами [1,3,2,4]. Что я хочу сделать: import numpy…
29 авг '18 в 12:22
3 ответа

Расширенная целочисленная нарезка, когда нарезка объекта является кортежем ndarray

Я понимаю как x=np.array([[1, 2], [3, 4], [5, 6]] y = x[[0,1,2], [0,1,0]] Выход дает y= [1 4 5] Это просто берет первый список в виде списка строк и секунд и столбцов. Но как работает ниже? x = np.array([[ 0, 1, 2],[ 3, 4, 5],[ 6, 7, 8],[ 9, 10, 11]…
2 ответа

Функция, аналогичная numpy.take, индексирует выходной параметр

В документации numpy.takeзаявлено, что a индексируется в соответствии с indices а также axisзатем результат может быть сохранен в out параметр. Существует ли функция, которая выполняет индексацию out вместо? Используя необычное индексирование, это б…
14 июн '18 в 08:16
1 ответ

numpy: индексирование 1d массива с многомерным индексом

Как мне индексировать массив данных меньшего размера с помощью массива индекса большего размера? Например: дан массив данных 1d и массив индекса 2d: data = np.array([11,12,13]) idx = np.array([[0,1], [1,2]) Я хотел бы получить 2d массив данных: np.a…
20 сен '18 в 14:43
1 ответ

Индексирование массива 1D Numpy с использованием 2D-массива

В Numpy, можем ли мы использовать двумерный массив как индекс в одномерном массиве? Какое правило индексации массива массивов применяется к следующему коду? # 1D array arr = np.arange(10) # array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) # 2D index indx = np.…
12 мар '18 в 07:45
0 ответов

Индексация 3dArray с 2dArray из 2d Индексы, где индексы соответствуют последним 2 измерениям и определены первые оси

Примером должен быть самый простой способ объяснить проблему: a = np.array([[1, 2, 3], [4, 5, 6]]) g = np.array([[0, 0], [1, 1]]) Здесь мы можем извлечь точки (0,0) и (1,1) на "картинке" a с помощью: print(a[g[:,0],g[:,1]]) Теперь я хочу добавить до…
2 ответа

Сбой расширенной индексации

У меня есть массив Numpy выглядит так: a = np.array([[0.87, 1.10, 2.01, 0.81 , 0.64, 0. ], [0.87, 1.10, 2.01, 0.81 , 0.64, 0. ], [0.87, 1.10, 2.01, 0.81 , 0.64, 0. ], [0.87, 1.10, 2.01, 0.81 , 0.64, 0. ], [0.87, 1.10, 2.01, 0.81 , 0.64, 0. ], [0.87,…
31 окт '18 в 14:44
0 ответов

numpy: arr[True] создает новую ось

Я не понимаю, почему True не ведет себя как логическая маска: >>> x = np.arange(5) >>> x[(x<3) & True].shape (3,) >>> x[np.repeat(True, 5)].shape (5,) >>> x[True].shape (1, 5)
04 май '18 в 12:41