У меня есть следующее двойное суммирование:

, который я хотел бы написать как код на R.
Ниже я представляю свое решение. Прежде всего, я решил сохранить x, y и z в качестве случайного массива или матрицы.
m<-5
n<-7
x<-runif(n)
y<-matrix(runif(n*m), ncol=m)
z<-runif(m)
И я использовал двойной цикл for для выполнения двойной суммы.
ans <- 0
for (i in 1:n){
for (j in 1:m){
ans <- ans + x[i]*y[i,j]*z[j]
}
}
Я бы хотел ускорить этот код, удалив двойной цикл for. Есть предложения?