Какое из сложений a + b вызовет ошибку broadcasting из-за несовместимых форм?

Aa формы (5,), b — скаляр (например, 2).
Ba формы (2, 3), b формы (1, 3).
Ca формы (3, 1), b формы (4,).
Da формы (2, 3), b формы (2,).
Правильный ответ. Для broadcasting размеры должны совпадать или один из них должен быть 1 (сравнение идёт справа налево).

Разбор

Broadcasting сравнивает формы по осям справа налево. Для (2, 3) и (2,) сравниваются последние оси: 3 и 2 — они не равны и ни одна не равна 1, значит формы несовместимы и выражение a + b упадёт с ошибкой. Умение проверять совместимость форм экономит много времени при отладке.

Проверь себя · 1/3разбор после ответа
Какой вызов создаст ndarray из нулей формы (7, 3) после import numpy as np?
Тренировать Python в Telegram

Ещё вопросы по теме «NumPy: основы»