Spec-Zone.ru › NumPy 1.21

numpy.indices

numpy.indices(dimensions, dtype=<class 'int'>, sparse=False)[source]

Возвращает массив, представляющий индексы сетки.

Вычисляет массив, где подмассивы содержат значения индексов 0, 1, …, изменяющиеся только вдоль соответствующей оси.

Параметры
dimensionsпоследовательность целых чисел

Форма сетки.

dtypeтип данных, необязательно

Тип данных результата.

sparseбулево, необязательно

Возвращает разреженное представление сетки вместо плотного представления. По умолчанию False.

Введено в версии 1.17.

Возвращает
gridодин ndarray или кортеж ndarrays
Если sparse равно False:

Возвращает один массив индексов сетки, grid.shape = (len(dimensions),) + tuple(dimensions).

Если sparse равно True:

Возвращает кортеж массивов, с grid[i].shape = (1, ..., 1, dimensions[i], 1, ..., 1) в i-ой позиции.

См. также

mgrid, ogrid, meshgrid

Примечания

Форма выходных данных в плотной форме получается путем добавления количества измерений перед кортежем измерений, т. е. если dimensions является кортежем (r0, ..., rN-1) длиной N, форма выходных данных равна (N, r0, ..., rN-1).

Подмассивы grid[k] содержат N-мерный массив индексов вдоль k-th оси. Явное определение:

grid[k, i0, i1, ..., iN-1] = ik

Примеры

>>> grid = np.indices((2, 3))
>>> grid.shape
(2, 2, 3)
>>> grid[0]        # row indices
array([[0, 0, 0],
       [1, 1, 1]])
>>> grid[1]        # column indices
array([[0, 1, 2],
       [0, 1, 2]])

Индексы могут использоваться как индексы в массиве.

>>> x = np.arange(20).reshape(5, 4)
>>> row, col = np.indices((2, 3))
>>> x[row, col]
array([[0, 1, 2],
       [4, 5, 6]])

Обратите внимание, что в приведенном выше примере проще было бы напрямую извлечь необходимые элементы с помощью x[:2, :3].

Если sparse установлено в true, сетка будет возвращена в разреженном представлении.

>>> i, j = np.indices((2, 3), sparse=True)
>>> i.shape
(2, 1)
>>> j.shape
(1, 3)
>>> i        # row indices
array([[0],
       [1]])
>>> j        # column indices
array([[0, 1, 2]])

© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.indices.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API