How to generate uniformly distributed random integers?
Mostrar comentarios más antiguos
I've been using "ceil(4*rand)" to generate random integers from 1 to 4. But when I tried to check the uniformity, I found that I do not get a probability of 0.25 and instead have p(1)=0.24997, p(2)=0.25102, p(3)=0.24949 and p(4)=0.24951 after generating 10,00,000 values. Is it good enough to say that it's uniform?
Respuesta aceptada
Más respuestas (2)
Pannir Selvam Elamvazhuthi
el 28 de Ag. de 2011
0 votos
1 comentario
the cyclist
el 29 de Ag. de 2011
No problem on the late response. However, you should consider deleting this "answer" (because it is not answer), and making it a comment on my answer.
Sergio Enrique Pinto Castillo
el 28 de Jul. de 2020
Editada: Sergio Enrique Pinto Castillo
el 28 de Jul. de 2020
0 votos
I think the answer is:
Num = 1000;
vec = randi([1 Num],1,Num);
This instruction generate a vector with random uniformly distributed integers between 1 and 1000
Categorías
Más información sobre Uniform Distribution (Continuous) en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!