随机化R中结构中的值

时间:2014-11-22 04:07:32

标签: r

对于周五晚上没有做得更好的人,我有一个结构,我需要随机化其中包含的值。首先,我需要获取所有值(这里是1到11),随机化它们并将它们添加回与原始结构相同的细分中。即......' 1'但它们是从1到11值中随机选择的四个,对于' 2'最后在' 3'中有3个随机值,并且全部没有替换。

所以:

strct <- structure(list(`1` = 1:4, `2` = 5:8, `3` = 9:11), .Names =
 c("1", "2", "3"))

屈服例如:

structure(list(`1` = c(4, 6, 1, 11), `2` = c(2, 5, 8, 9), `3` = c(3, 7, 10)),
  .Names = c("1", "2", "3"))

谢谢!

1 个答案:

答案 0 :(得分:2)

尝试

split(sample(unlist(strct, use.names=FALSE)), 
            cumsum(sequence(sapply(strct, length))==1))

#$`1`
#[1] 5 2 1 6

#$`2`
#[1]  3  9 11  8

#$`3`
#[1] 10  7  4