#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
Комментариев нет:
Отправить комментарий