用R生成随机的顺序

问题

你想事一个数据结构随机化。

方案

  1. # 创建一个向量
  2. v <- 11:20
  3. # 随机化向量的顺序
  4. v <- sample(v)
  5. # 创建一个列表
  6. data <- data.frame(label=letters[1:5], number=11:15)
  7. data
  8. #> label number
  9. #> 1 a 11
  10. #> 2 b 12
  11. #> 3 c 13
  12. #> 4 d 14
  13. #> 5 e 15
  14. # 随机化列表的顺序
  15. data <- data[sample(1:nrow(data)), ]
  16. data
  17. #> label number
  18. #> 5 e 15
  19. #> 2 b 12
  20. #> 4 d 14
  21. #> 3 c 13
  22. #> 1 a 11

注意

为了使随机化可重复,你应该设置随机数生成器。详见:Numbers-生成随机数Numbers-生成可重复的随机数序列


原文链接:http://www.cookbook-r.com/Manipulating_data/Randomizing_order/