¿Alguien tiene alguna experiencia con situaciones donde set.seed arroja resultados diferentes según el sistema operativo (SO)? Recuerdo que me encontré con una situación similar en una clase en R antes, donde algunas personas generaban diferentes secuencias aleatorias utilizando rnorm a pesar de establecer la semilla inicial en el mismo valor. Ahora, estoy dando un curso y no he tenido el mismo problema con rnorm; todos mis alumnos obtienen la misma secuencia independientemente del sistema operativo. Curiosamente, parece existir el mismo problema con la función mvrnorm del paquete MASS.Generación de números aleatorios diferentes entre OS
Cualquier idea sería muy apreciada - Marc
Este ejemplo:
require(MASS)
set.seed(123)
a <- rnorm(10, mean=10, sd=3)
b <- rnorm(10, mean=5, sd=2)
df <- data.frame(a,b)
C <- cov(df)
M <- mvrnorm(n=10, c(10,5), C)
df
C
M
Los rendimientos de mi sistema operativo Windows 7 versión de 64 bits de R 2.14.1 .:
> df
a b
1 8.318573 7.448164
2 9.309468 5.719628
3 14.676125 5.801543
4 10.211525 5.221365
5 10.387863 3.888318
6 15.145195 8.573826
7 11.382749 5.995701
8 6.204816 1.066766
9 7.939441 6.402712
10 8.663014 4.054417
> C
a b
a 8.187336 3.431373
b 3.431373 4.310385
> M
a b
[1,] 13.270535 6.158603
[2,] 10.375011 5.737871
[3,] 13.514105 5.476411
[4,] 12.681956 5.020646
[5,] 12.352333 4.927746
[6,] 15.177508 6.810387
[7,] 8.114377 2.925225
[8,] 9.529744 4.834451
[9,] 12.903550 7.232715
[10,] 6.251907 3.481789
Editar: puede ser útil saber si alguien no está obteniendo estos resultados y qué sistema operativo o versiones de R se utilizaron.
¿Estabas usando la misma versión de R y/o el mismo RNGkind? – Dason
@Dason - No, no lo creo. En algunos casos, pueden tener versiones más nuevas de R que yo. Pero creo que, incluso entre los estudiantes, estaban obteniendo resultados diferentes y el sistema operativo parecía ser un posible denominador común. –
No, no es así. R genera los RNG en sí, y la única diferencia posible tal vez sea la descomposición de la matriz si haces 'mvrnorm', y eso puede deberse a las bibliotecas LAPACK/BLAS. Si dibujas solo vectores secuenciales, estoy bastante seguro de que obtendrás los mismos números. R presta atención a estas cosas. –