Я пытаюсь найти хороший способ выполнить следующую операцию добавления без использования np.repeat
для создания большого размера. Если вы используете np.repeat
и добавление - лучшее решение, дайте мне знать.Пример тиражирования в цифрах без повторения
Я также смущен тем, что делает вещание в этом случае. По существу, у меня есть 4d матрицу, и я хочу, чтобы добавить 2d матрицу в 1-й и 2-го индекса, в то время как и делают это по индексу 0 и индекс 3.
Это работает правильно
a = np.arange(64).reshape((2,4,4,2)).astype(float)
b = np.ones((2,2))
a[:, 0:2, 0:2, : ] += b
Это бросает ошибка. Каков хороший способ сделать это?
a[:, 0:3, 0:3, :] += np.ones((3,3))
Это работает, но это не то, что я ищу, чтобы сделать
c = np.arange(144).reshape(3,4,4,3).astype(float)
c[:, 0:3, 0:3, :] += np.ones((3,3))
Код «работает правильно» на самом деле не делает то, что вы считаете. Он выглядит только потому, что он работает, потому что все элементы 'b' равны. – user2357112