#python #numpy
Дан вектор x и матрица А. Надо умножить все четные столбцы матрицы А на вектор x в обратном порядке. Результат записать в новую матрицу и найти сумму ее элементечалов. import numpy as np A = np.array([ [2, 1], [2, 2], [4, 3] ]) x = np.array([ [2], [3] ]) b = A.dot(x) print(b) Этот код умножает матрицу на вектор. Как переделать код, чтобы соответствовал заданию?
Ответы
Ответ 1
Сделаем маску на четные индексы и умножим их на развернутый в обратном порядке вектор m = np.arange(0,A.shape[0],2) A[m].dot(x[::-1]) array([[ 8], [18]])Ответ 2
Можно воспользоваться срезами: A[::2] @ x[::-1] Результат: array([[ 8], [18]]) Сумма элементов: (A[::2] @ x[::-1]).sum() # 26
Комментариев нет:
Отправить комментарий