R shuffle列表包含重复元素

时间:2016-10-24 17:43:44

标签: r

我在R中有多个列表,每个列表都有唯一的元素,但有些元素在多个列表中。我想改组列表,但每个列表只有唯一的元素。这是一些东西,但最终没有最终的唯一列表

x<-list()
x[[1]]<-c(1,2,3,4,5)
x[[2]]<-c(1,2,6,7,8)

u<-unlist(x)
x2<-relist(u[sample(length(u))],skeleton=x)

> x
[[1]]
[1] 1 2 3 4 5

[[2]]
[1] 1 2 6 7 8

> x2
[[1]]
[1] 4 8 3 5 6

[[2]]
[1] 2 1 2 1 7

尝试找出额外的步骤,以确保每个列表有五个唯一的数字。

1 个答案:

答案 0 :(得分:0)

在您的示例中,向量仅包含唯一值,因此我认为解决方案可以简单:

x <- list(c(1,2,3,4,5), c(1,2,6,7,8))

lapply(x, sample)

# [[1]]
# [1] 3 2 5 1 4
# 
# [[2]]
# [1] 1 6 7 2 8