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