set.seed 从具有不同参数的指数分布中产生相同的随机数

set.seed causes the same random numbers from exponential distribution with different parameter

我观察到以下行为:当我设置种子并从某个分布中抽取随机数时,e.g.exponential 和 lambda=1,我得到的数字与设置相同种子并使用 lambda=10,只高出10倍:

set.seed(123)
rexp(10,1)
 [1] 0.84345726 0.57661027 1.32905487 0.03157736 0.05621098 0.31650122 0.31422729 0.14526680 2.72623646
[10] 0.02915345
set.seed(123)
rexp(10,10)
 [1] 0.084345726 0.057661027 0.132905487 0.003157736 0.005621098 0.031650122 0.031422729 0.014526680
 [9] 0.272623646 0.002915345

我期望的是,不同的 lambda 作为速率参数会导致各个数字之间的距离不同,即指数曲线的不同陡度 (Exponential_distribution),无论种子是什么。

这种行为有原因吗?

感谢您的想法!

它确实会导致数字之间的距离不同(在第二种情况下要少 10 倍),如果您绘制数据的密度图,这一点会清晰可见:

set.seed(123)
y1=rexp(10000,1)
set.seed(123)
y2=rexp(10000,10)
dt=data.table(x=c(seq_along(y1),seq_along(y2)),y=c(y1,y2),type=c(rep('a',times = length(y1)),rep('b',times=length(y2))))
qplot(data=dt,x=y,geom="density",col=type)

我认为这里没有任何错误。