numpy.lib.stride_tricks.as_strided
- lib.stride_tricks.as_strided(x, shape=None, strides=None, subok=False, writeable=True)[source]
-
Создать представление массива с заданной формой и шагами.
Предупреждение
Эта функция должна использоваться с большой осторожностью, см. примечания.
- Параметры:
-
- xndarray
-
Массив, для которого нужно создать новое представление.
- shapeпоследовательность целых чисел, необязательно
-
Форма нового массива. По умолчанию
x.shape. - stridesпоследовательность целых чисел, необязательно
-
Шаги нового массива. По умолчанию
x.strides. - subokbool, необязательно
-
В версии 1.10.
Если True, подклассы сохраняются.
- writeablebool, необязательно
-
В версии 1.12.
Если False, возвращаемый массив всегда будет только для чтения. В противном случае он будет изменяемым, если исходный массив был. Рекомендуется устанавливать это значение в False, если это возможно (см. Примечания).
- Возвращает:
-
- viewndarray
См. также
broadcast_to-
распространение массива до заданной формы.
reshape-
изменение формы массива.
lib.stride_tricks.sliding_window_view-
функция, удобная для пользователя и безопасная для создания представлений скользящего окна.
Примечания
as_stridedсоздаёт представление массива, задавая точные шаги и форму. Это означает, что он манипулирует внутренней структурой данных ndarray и, если это сделано неправильно, элементы массива могут указывать на недопустимую память и могут привести к повреждению результатов или сбою вашей программы. Рекомендуется всегда использовать исходныйx.stridesпри вычислении новых шагов, чтобы избежать зависимости от непрерывной структуры памяти.Кроме того, массивы, созданные с помощью этой функции, часто содержат перекрывающуюся память, так что два элемента совпадают. Векторизованные операции записи в таких массивах обычно будут непредсказуемыми. Они могут даже давать разные результаты для малых, больших или транспонированных массивов.
Поскольку запись в эти массивы должна быть проверена и выполнена с большой осторожностью, вы можете использовать
writeable=Falseчтобы избежать случайных операций записи.По этим причинам рекомендуется избегать
as_stridedпо возможности.
© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.lib.stride_tricks.as_strided.html