numpy.ma.indices
-
ma.indices(dimensions, dtype=<class 'int'>, sparse=False)[source] -
Возвращает массив, представляющий индексы сетки.
Вычисляет массив, где подмассивы содержат значения индексов 0, 1, …, изменяющиеся только вдоль соответствующей оси.
- Параметры
-
-
dimensionssequence of ints -
Форма сетки.
-
dtypedtype, optional -
Тип данных результата.
-
sparseboolean, optional -
Возвращает разреженное представление сетки вместо плотного. По умолчанию False.
Новое в версии 1.17.
-
- Возвращает
-
-
gridone ndarray or tuple of ndarrays -
- Если sparse = False:
-
Возвращает один массив индексов сетки,
grid.shape = (len(dimensions),) + tuple(dimensions). - Если sparse = True:
-
Возвращает кортеж массивов, где
grid[i].shape = (1, ..., 1, dimensions[i], 1, ..., 1)с измерениями [i] на 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–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.ma.indices.html