У меня есть матрица m
и вектор v
. Я хотел бы умножить первый столбец матрицы m
на первый элемент вектора v
и умножить второй столбец матрицы m
на второй элемент вектора v
и так далее. Я могу сделать это со следующим кодом, но я ищу способ, который не требует двух транспозиционных вызовов. Как я могу сделать это быстрее в R?
m <- matrix(rnorm(120000), ncol=6)
v <- c(1.5, 3.5, 4.5, 5.5, 6.5, 7.5)
system.time(t(t(m) * v))
# user system elapsed
# 0.02 0.00 0.02