Spec-Zone.ru › NumPy 1.19

numpy.lib.stride_tricks.as_strided

numpy.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

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

Примечания

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

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

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

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

Spec-Zone.ru

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