我有两个结构相同的列表。我想将它们组合起来以产生以下所需的输出。
woocommerce
答案 0 :(得分:5)
由于“A”和“B”中相应list
元素的长度不同,我们可以将其保持在list
。一个方便的功能是Map
,可以在'A'和'B'的相应list
元素上执行此操作。
lst <- Map(list, A, B)
如果我们希望将其保留为matrix
NA
以填充不等长,则stri_list2matrix
中的一个选项为library(stringi)
。输出为matrix
,但我们需要将character
输出转换回numeric
library(stringi)
lst1 <- lapply(lst, stri_list2matrix, byrow=TRUE)
lapply(lst1, function(x) matrix(as.numeric(x),nrow=2))
#[[1]]
# [,1] [,2] [,3] [,4] [,5] [,6]
#[1,] 1 2 3 2 1 4
#[2,] 2 1 3 2 NA NA
#[[2]]
# [,1] [,2] [,3] [,4] [,5] [,6]
#[1,] 7 3 1 2 2 1
#[2,] 3 1 5 2 NA NA
#[[3]]
# [,1] [,2] [,3] [,4] [,5] [,6]
#[1,] 2 3 7 2 2 8
#[2,] 2 4 5 1 NA NA