R语言中set.seed函数的作用是保证两次随机抽样的结果一致。
1、不使用set.seed函数的情况下
> sample(1:8, 3) ## 从1~8中随机抽取3个数字 [1] 3 7 4 > sample(1:8, 3) [1] 4 8 6 > sample(1:8, 3) [1] 1 5 4 > sample(1:8, 3) ## 可以看到4次的抽取结果都不相同,是随机抽取 [1] 4 7 6
2、使用set.seed函数
> set.seed(111) ## 设定种子为111 > sample(1:8, 3) ## 从1-8中随机抽取3个数字 [1] 6 3 4 > set.seed(111) ## 设定种子为111 > sample(1:8, 3) ## 从1-8中随机抽取3个数字 [1] 6 3 4 > set.seed(111) > sample(1:8, 3) [1] 6 3 4 > set.seed(111) > sample(1:8, 3) ## 可以发现只要设定的种子相同,随机抽取的结构就相同 [1] 6 3 4
3、测试抽取不同个数的情况
> set.seed(111) ## 设定种子 > sample(1:8, 3) [1] 6 3 4 > set.seed(111) > sample(1:8, 3) ## 抽取个数一致时, 结果一致 [1] 6 3 4 > set.seed(111) > sample(1:8, 4) ## 当增加抽取个数时,前几个结果仍然一致 [1] 6 3 4 7 > set.seed(111) > sample(1:8, 5) ## 前几个结果一致 [1] 6 3 4 7 5