Умножить матрицы в списке

Я хотел бы умножить несколько матриц списка. Я знаю, что это работает с одной матрицей:

 x1  <- c(2,2,2,3,1,2,4,6,1,2,4)
 y1  <- c(5,4,3,3,4,2,1,6,4,2,3)
 x2  <- c(8,2,7,3,1,2,2,2,1,2,6)
 y2  <- c(1,3,3,3,1,2,4,3,1,2,8)
 x3  <- c(1,0,1,0,0,0,1,1,1,1,1)
 y3  <- c(1,0,0,0,0,0,1,1,0,1,0)
 x4  <- c(1,0,1,0,0,0,0,1,0,1,0)
 y4  <- c(1,0,1,0,0,0,1,1,1,1,1)

 mat1 <- cbind(x1,y1,x2,y2); mat1
 mat2 <- cbind(x3,y3,x4,y4); mat2

 mat3 <- mat1*mat2; mat3

Результат, как я и хотел, когда вторая матрица имела ноль, тогда значение в результате было установлено равным нулю, в противном случае результат оставался прежним:

       x1 y1 x2 y2
 [1,]  2  5  8  1
 [2,]  0  0  0  0
 [3,]  2  0  7  3
 [4,]  0  0  0  0
 [5,]  0  0  0  0
 [6,]  0  0  0  0
 [7,]  4  1  0  4
 [8,]  6  6  2  3
 [9,]  1  0  0  1
[10,]  2  2  2  2
[11,]  4  0  0  8

Теперь рассмотрим список с несколькими матрицами, оба списка имеют одинаковые матрицы, одно из значений, другое содержит 1/0, но точно такого же размера. Как я могу получить тот же результат, что и выше, например, умножение обеих первых матриц, затем обеих вторых матриц и так далее. результат, как указано выше, будет для пары первых матриц.

Ответы на вопрос(2)

Ваш ответ на вопрос