У меня есть массив 2D
numpy
L
, который я хочу преобразовать в другой массив numpy
такой же формы, чтобы каждая строка заменялась суммой всех других строк.Я продемонстрировал это ниже.
Мой вопрос: есть ли более лаконичный / элегантный способ сделать это (желательно с использованием более сложных numpy
синтаксисов / инструментов).
L = np.array([[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8],
[ 9, 10, 11]])
store = []
for i in range(L.shape[0]):
store.append(np.sum(L,axis=0) - L[i])
output = np.stack(store)
Какойдает мне правильный вывод:
array([[18, 21, 24],
[15, 18, 21],
[12, 15, 18],
[ 9, 12, 15]])