Функция broadcast_to
Функция broadcast_to создает новое представление массива,
транслируя его до заданной формы. Первым параметром
передается исходный массив, вторым - целевая форма.
Важно, чтобы целевая форма была совместима с формой
исходного массива по правилам broadcasting.
Синтаксис
np.broadcast_to(arr, shape)
Параметры
Основные параметры функции broadcast_to:
-
arr- исходный массив для трансляции -
shape- целевая форма (кортеж или целое число)
Пример 1
Транслируем одномерный массив к форме (3, 3):
import numpy as np
arr = np.array([1, 2, 3])
res = np.broadcast_to(arr, (3, 3))
print(res)
Результат выполнения кода:
[[1 2 3]
[1 2 3]
[1 2 3]]
Пример 2
Транслируем одномерный массив к форме (2, 4):
import numpy as np
arr = np.array([1, 2, 3, 4])
res = np.broadcast_to(arr, (2, 4))
print(res)
Результат выполнения кода:
[[1 2 3 4]
[1 2 3 4]]
Пример 3
Транслируем скаляр (массив формы ()) к форме (3, 3):
import numpy as np
arr = np.array(5)
res = np.broadcast_to(arr, (3, 3))
print(res)
Результат выполнения кода:
[[5 5 5]
[5 5 5]
[5 5 5]]
Пример 4
Попытка трансляции с несовместимой формой вызывает ошибку:
import numpy as np
arr = np.array([1, 2, 3])
try:
res = np.broadcast_to(arr, (2, 4))
except ValueError as e:
print(e)
Результат выполнения кода:
"operands could not be broadcast together with remapped shapes"
Смотрите также
-
функцию
broadcast_arrays,
которая транслирует несколько массивов к общей форме -
функцию
expand_dims,
которая добавляет новую ось в массив -
функцию
tile,
которая повторяет массив вдоль осей -
функцию
repeat,
которая повторяет элементы массива