numpy.broadcast_arrays
-
numpy.broadcast_arrays(*args, **kwargs)[source] -
Распространение произвольного количества массивов друг против друга.
Параметры: -
`*args` : array_likes -
Массивы для распространения.
-
subok : bool, optional -
Если True, то подклассы будут переданы, в противном случае возвращаемые массивы будут принудительно преобразованы в массив базового класса (по умолчанию).
Возвращает: -
broadcasted : list of arrays -
Эти массивы являются представлениями исходных массивов. Они обычно не являются непрерывными. Кроме того, более чем один элемент широковещательного массива может ссылаться на одно местоположение в памяти. Если вам нужно записать в массивы, сначала сделайте копии. Хотя вы можете установить флаг
writableв значение True, запись в одно выходное значение может привести к изменению более чем одного местоположения в выходном массиве.Устарело начиная с версии 1.17: Выходные данные в настоящее время помечены таким образом, что при записи будет выведено предупреждение об устаревании. В будущей версии флаг
writableбудет установлен в значение False, поэтому запись в него будет вызывать ошибку.
Примеры
>>> 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–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.17.0/reference/generated/numpy.broadcast_arrays.html