Spec-Zone.ru › NumPy 1.21

numpy.broadcast_arrays

numpy.broadcast_arrays(*args, subok=False)[source]

Распространение произвольного числа массивов друг против друга.

Параметры
`*args`array_likes

Массивы для распространения.

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

Если True, то подклассы будут передаваться, в противном случае возвращаемые массивы будут принудительно преобразованы в массив базового класса (по умолчанию).

Возвращает
broadcastedсписок массивов

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

Устарело начиная с версии 1.17: Выходные данные в настоящее время помечены так, что при записи в них будет выведено предупреждение об устаревании. В будущей версии флаг writable будет установлен в значение False, поэтому запись в него будет вызывать ошибку.

См. также

broadcast
broadcast_to
broadcast_shapes

Примеры

>>> x = np.array([[1,2,3]])
>>> y = np.array([[4],[5]])
>>> np.broadcast_arrays(x, y)
[array([[1, 2, 3],
       [1, 2, 3]]), array([[4, 4, 4],
       [5, 5, 5]])]

Вот полезный фрагмент кода для получения непрерывных копий вместо несмежных представлений.

>>> [np.array(a) for a in np.broadcast_arrays(x, y)]
[array([[1, 2, 3],
       [1, 2, 3]]), array([[4, 4, 4],
       [5, 5, 5]])]

© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.broadcast_arrays.html

Spec-Zone.ru

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