How i can save a random value from a matrix in a variable,exluding values lower than 1?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Giannakis Stoukas
el 22 de Abr. de 2015
Comentada: Image Analyst
el 22 de Abr. de 2015
I have a matrix 100X100 and i want a command to insert in variable pnode a random value of this matrix but,i want the value to be bigger than 1.For example if i have the matrix A=[4 5 2 1; 8 3 1 0] my variable pnode,can take on of the values 4,5,2,8,3 randomly
0 comentarios
Respuesta aceptada
Image Analyst
el 22 de Abr. de 2015
Try this:
% Generate sample data
A=[4 5 2 1; 8 3 1 0]
% Get column vector of all the elements where A > 0
A_No_Zeros = A(A > 0)
% Get a random index.
randomIndex = randi(length(A_No_Zeros), 1);
% Assign pnode the random value from A_No_Zeros.
pnode = A(randomIndex)
4 comentarios
Image Analyst
el 22 de Abr. de 2015
Because once you ignore 0's and 1's in [4 5 2 1; 8 3 1 0] you are left with [4 5 2 8 3] and the minimum of that is 2. Not sure why you're surprised. However my code did not compute the minimum so that must be code you added.
Más respuestas (0)
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!