Cbind 列表元素

Cbind elements of a list

假设我有两个具有相同数量(和形状)元素的列表。我想将这两个列表绑定在一起。

我该怎么做?

谢谢

list1 <- list()
list2 <- list()
list_all <- list()

list1[[1]] <- matrix(c(1,2,3,4), nrow=2)
list1[[2]] <- matrix(c(4,5,6,7), nrow=2)

list2[[1]] <- matrix(c(1,2,3,4), nrow=2)
list2[[2]] <- matrix(c(4,5,6,7), nrow=2)

# combine both sets of matrices at the same time:
list_all <- cbind(list1, list2)

# wrong output
list_all

# combine individually:
list_all[[1]] <- cbind(list1[[1]], list2[[1]])
list_all[[2]] <- cbind(list1[[2]], list2[[2]])

# wrong output
list_all

# desired output
list_all[[1]] <-matrix(c(1,2,3,4,1,2,3,4),nrow=2)
list_all[[2]] <-matrix(c(4,5,6,7,4,5,6,7),nrow=2)

list_all 

使用Map

list_all <- Map(cbind, list1, list2)

map2purrr 中:

list_all <- purrr::map2(list1, list2, cbind)