Spec-Zone.ru › NumPy 1.20

numpy.lib.stride_tricks.as_strided

lib.stride_tricks.as_strided(x, shape=None, strides=None, subok=False, writeable=True) [source]

Создаёт представление в массиве с заданной формой и шагами.

Предупреждение

Эта функция должна использоваться с большой осторожностью, см. примечания.

Параметры
xndarray

Массив для создания нового.

shapesequence of int, optional

Форма нового массива. По умолчанию x.shape.

stridessequence of int, optional

Шаги нового массива. По умолчанию x.strides.

subokbool, optional

Добавлена в версии 1.10.

Если True, подклассы сохраняются.

writeablebool, optional

Добавлена в версии 1.12.

Если установлено в False, возвращаемый массив всегда будет только для чтения. В противном случае он будет изменяемым, если исходный массив был изменяемым. Рекомендуется установить это значение в False, если это возможно (см. Примечания).

Возвращает
viewndarray

См. также

broadcast_to

распространить массив на заданную форму.

reshape

изменить форму массива.

lib.stride_tricks.sliding_window_view

функция, удобная для пользователя и безопасная для создания представлений скользящего окна.

Примечания

as_strided создаёт представление в массиве, учитывая точные шаги и форму. Это означает, что он манипулирует внутренней структурой данных ndarray и, если это сделано неправильно, элементы массива могут указывать на недопустимую память, что может испортить результаты или привести к сбою программы. Рекомендуется всегда использовать исходный x.strides при вычислении новых шагов, чтобы избежать зависимости от непрерывного расположения памяти.

Кроме того, массивы, созданные с помощью этой функции, часто содержат перекрывающуюся память, так что два элемента идентичны. Векторизованные операции записи в таких массивах, как правило, будут непредсказуемыми. Они могут даже давать разные результаты для небольших, больших или транспонированных массивов. Поскольку запись в эти массивы должна быть проверена и выполнена очень осторожно, вы можете использовать writeable=False для предотвращения случайных операций записи.

По этим причинам рекомендуется избегать as_strided когда это возможно.

© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.lib.stride_tricks.as_strided.html

Spec-Zone.ru

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