numpy.lib.stride_tricks.as_strided#

lib.stride_tricks.as_strided(x, shape=None, strides=None, subok=False, доступный для записи=True)[источник]#

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

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

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

Параметры:
xndarray

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

shapeпоследовательность целых чисел, необязательно

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

stridesпоследовательность целых чисел, необязательно

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

subokbool, необязательно

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

доступный для записиbool, необязательно

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

Возвращает:
представлениеndarray

Смотрите также

broadcast_to

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

reshape

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

lib.stride_tricks.sliding_window_view

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

Примечания

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

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

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

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