我有两个矩阵列表,LIST1
(大小为m)和LIST2
(大小为n)。 LIST1
的每个矩阵的大小为(p,q)
,LIST2
包含大小为(p,1)
的列矩阵。我想将每个LIST2列矩阵组合到每个LIST1。我试过了lapply
,但无法弄明白。输出列表的大小为mn
答案 0 :(得分:3)
您可以使用lapply
制作嵌套循环:
unlist(lapply(LIST1, function(x) lapply(LIST2, cbind, x)), recursive = F)
这是一个可重复的小例子:
LIST1 <- list(matrix(1:4, nrow = 2), matrix(2:5, nrow = 2))
LIST2 <- list(matrix(1:2, nrow = 2))
unlist(lapply(LIST1, function(x) lapply(LIST2, cbind, x)), recursive = F)
#[[1]]
# [,1] [,2] [,3]
#[1,] 1 1 3
#[2,] 2 2 4
#[[2]]
# [,1] [,2] [,3]
#[1,] 1 2 4
#[2,] 2 3 5