Borrar filtros
Borrar filtros

How to generate 0 and 1 with equal probability using 'randi' function?

11 visualizaciones (últimos 30 días)
Binary random number generator, generating 0 and 1 with equal probability (using 'randi' function). i tried with randi (M, N, [0 1]) to generate random numbers of matrix size MxN in the range 0 and 1 with equal probability.
  1 comentario
Md. Tariqul Amin
Md. Tariqul Amin el 27 de Mayo de 2012
i tried with *randi (M, N, [0 1])* to generate random numbers of matrix size MxN in the range 0 and 1 with equal probability. But,it's not working

Iniciar sesión para comentar.

Respuesta aceptada

Geoff
Geoff el 27 de Mayo de 2012
You did it backwards. Do this:
nums = randi([0 1], M, N)
Please note that while there is equal probability of randomly generating a zero or a one, that does NOT mean that your matrix will have the same number of zeros and ones.
If you require exactly 50% 0/1, then you need to do this:
nums = mod( reshape(randperm(M*N), M, N), 2 );
Bearing in mind that M*N must be an even number.
  2 comentarios
Md. Tariqul Amin
Md. Tariqul Amin el 28 de Mayo de 2012
Thanks. I just did that backwards,it's working now
Usman  Ali
Usman Ali el 17 de Feb. de 2014
Hi dear, I have the same question with different parameters. I have 4 different discrete signals. each with 1000 samples per second. I want to generate the sum of all these 4 signals with equal probab such that at the end I get 100 signals (this contains 25% of each signal, 25 copies of same signal at different places). Hope that you get my point. I can apply switch and case for the for signals, only I need to generate number between 1 and 4 with equal probability of occurance

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by