How i can save a random value from a matrix in a variable,exluding values lower than 1?
6 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Giannakis Stoukas
le 22 Avr 2015
Commenté : Image Analyst
le 22 Avr 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 commentaires
Réponse acceptée
Image Analyst
le 22 Avr 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 commentaires
Image Analyst
le 22 Avr 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.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!