Foro de debate

generar 200 repeticiones de 50 numeros aleatorios

generar 200 repeticiones de 50 numeros aleatorios

de rolando antonio fuica mora -
Número de respuestas: 1

Hola a todos... necesito generar 200 repeticiones de este código

x<-numeric(50)
semilla<-27218
x[1]=(171*semilla)%%30269
for(i in 2:50){x[i]=(171*x[i-1])%%30269}
NumerosAleatorios<-(x/30269)
NumerosAleatorios

es decir el output debe ser una matriz de 50 filas y 200 columnas. gracias.
En respuesta a rolando antonio fuica mora

Re: generar 200 repeticiones de 50 numeros aleatorios

de Manuel Muñoz Márquez -
Hola Rolando:

Si fijas la semilla repitiendo el código 200 veces obtendrás 200 veces lo mismo. Y no creo que sea eso lo que pretendes.

Supongamos que construyes una función que devuelve un vector de 50 elementos (distintos cada vez). Pongamos:
f = function()
{
x<-numeric(50)
semilla<-27218
x[1]=(171*semilla)%%30269
for(i in 2:50){x[i]=(171*x[i-1])%%30269}
NumerosAleatorios<-(x/30269)
NumerosAleatorios
}

Entonces lo que pretendes se podría hacer
m <- matrix(nrow=50, ncol=200)
for (i in 1:200) m[,i] = f()

Otra opción es que la función devuelva un vector con el tamaño total y convertirlo luego a matriz.

Saludos