一次采样多个列表

Sample multiple lists at once

我有 10 个列表。每个列表都有 20 个元素。我想创建一个包含每 20 个其他列表中的元素的通用列表。更具体地说,我使用 sample 从每个列表中取出 2 个元素,然后将它们存储在我的通用列表中。我做的一个样本:

general_list=sample(listx,2,replace=TRUE)

我的问题是:有没有办法立刻做到这一点?类似于:

general_list=sample(listx,listy,listk,...,2,replace=TRUE)

我是新手,所以这可能很简单

您可以执行以下操作:

a <- as.list(1:5)
b <- as.list(6:10)
c <- as.list(11:15)

dat <- list(a,b,c)
res <- unlist(lapply(dat, sample, 2), recursive = FALSE)

res 是每个 abc 中的 2 个元素的列表。它们的顺序是 res[1:2] 来自 a,res[3:4] 来自 b 等等。如果您也想对该订单进行抽样,请使用 sample(res)