2015-10-05 93 views
1

如何随机采样n个整数(假设从1到200)避免伪随机问题?我目前使用的是sample(),但每次运行我的代码时生成的序列都是相同的。避免在R中产生伪随机数

+2

你用'随时随地在你的脚本set.seed'? – Benjamin

+2

我们没有你的代码,所以我们不知道你在做什么。 – hrbrmstr

回答

2

没有看到你的代码,这听起来像你(无意)重新RNG。无论如何,如果你有兴趣避免PRNG产生的任何可能的问题,你可以使用random package,它利用random.org的true随机数发生器。例如,

set.seed(123) 
R> random::randomNumbers(10, 1, 200, col = 1) 
#  V1 
# [1,] 178 
# [2,] 171 
# [3,] 20 
# [4,] 47 
# [5,] 113 
# [6,] 75 
# [7,] 120 
# [8,] 125 
# [9,] 98 
# [10,] 15 

set.seed(123) 
R> random::randomNumbers(10, 1, 200, col = 1) 
#  V1 
# [1,] 112 
# [2,] 84 
# [3,] 83 
# [4,] 20 
# [5,] 19 
# [6,] 112 
# [7,] 64 
# [8,] 134 
# [9,] 105 
# [10,] 63 

+1

不知道这个包。 (+1) – akrun

+0

听起来很完美! thx很多,我会立即尝试 – Tunarock