¿Hay alguna manera de generar un conjunto de datos con valores aleatorios normalmente distribuidos en R sin usar un bucle? Cada entrada representaría una variable aleatoria independiente con una distribución normal.Generar matriz con iid variables aleatorias normales usando R
Respuesta
Para crear una matriz de N
por M
de iid aleatoria normal variables escriba esto:
matrix(rnorm(N*M,mean=0,sd=1), N, M)
ajustar la media y el estándar d desviación como se desee.
Mientras el interlocutor entienda que N es el número de filas y M el número de columnas, entonces estará bien atendido por esta respuesta –
@DWin, de acuerdo. Esa es la notación convencional cuando se refiere a matrices en cualquier contexto, ¿verdad? – Macro
No estoy muy seguro. Sé que la gente a veces expresa sorpresa por el hecho de que las matrices de R se llenan en orden de columna mayor con llamadas a 'matriz' a menos que byrow = TRUE. Eso me hizo pensar que podría haber una variación en las convenciones matriciales en varios idiomas. –
let mu
ser un vector de medios y sigma
un vector de desarrolladores estándar
mu<-1:10
sigma<-10:1
sample.size<-100
norm.mat<-mapply(function(x,y){rnorm(x,y,n=sample.size)},x=mu,y=sigma)
produciría una matriz con columnas que sostiene las muestras pertinentes
Gracias, eso funciona. La solución de @cardenal es mucho más simple. –
Aviso: cada entrada es independiente. Por lo tanto, no puede evitar el uso de bucles for, ya que debe llamar a rnorm una vez para cada variable independiente. Si simplemente llama a rnorm (n * m) ¡esa es la n * m muestras de la misma variable aleatoria!
esto es incorrecto, y confuso ... 'rnorm (n * m)' * does * generate 'n * m' ** muestras ** al azar, exactamente como solicitó el OP. –
que puede utilizar:
replicate(NumbOfColumns,rnorm(NumbOfLines))
Puede reemplazar rnorm
con otras funciones de distribución, por ejemplo runif
, para generar matrices con otras distribuciones.
- 1. generar enumeraciones aleatorias
- 2. Variables gaussianas aleatorias
- 3. Cómo generar entradas aleatorias de 64 bits con impulso aleatorio
- 4. Hacer una matriz de entradas aleatorias
- 5. ¿Cómo generar este tipo de curvas aleatorias?
- 6. R biglm con variables categóricas
- 7. Usando matriz para generar texto aleatorio
- 8. Variables aleatorias distribuidas por Gamma en C++
- 9. ¿Manera eficiente de generar tablas de contingencia aleatorias?
- 10. Secuencia de incrementos variables con R?
- 11. QR code, se puede generar con R?
- 12. Variables globales en R
- 13. Generando palabras aleatorias en Java?
- 14. Usando R con Apache y PHP
- 15. Variables el revestimiento en R
- 16. Generando miniaturas aleatorias con PHP + FFMPEG
- 17. ¿Cómo generar una fecha y hora aleatorias entre dos fechas?
- 18. Variables estáticas en R
- 19. Regresión lineal en R (datos normales y logarítmicos)
- 20. usando instrucción con múltiples variables
- 21. Generar desvía al azar estocásticos de un objeto de densidad con R
- 22. Generar 3 números aleatorios que sumen a 1 en R
- 23. manipulación de matriz R
- 24. Usando apply en una matriz multidimensional en R
- 25. Crear una matriz de similitud de números enteros, usando R
- 26. Exportar matriz en r
- 27. cadena Pyparsing CSV con citas aleatorias
- 28. Semillas aleatorias paralelas no correlacionadas con C++ 2011?
- 29. Usando NHibernate con Codesmith para generar ORM
- 30. R: crear una matriz con un número desconocido de filas
'matriz (rnorm (n * p), n)' para una $ n \ times p $ matrix con iid $ \ mathcal N (0,1) $ entradas. – cardinal