Use numbers in a matrix to call vector row
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Christopher
le 30 Sep 2014
Réponse apportée : Michael Haderlein
le 30 Sep 2014
I have the code
prand = rand(100,100);
P = 1+round(prand*999);
P2 = P(samparray,1); % this part doesn't work
where samparray is a 1000x1 array of numbers
So we have a matrix P of randomly generated integers (between 1 and 1000). Each number in P corresponds to a row in samparray, and I want P2 to return the corresponding values in samparray into the form of matrix P. How can I modify P2 to do this?
Thanks
0 commentaires
Réponse acceptée
Michael Haderlein
le 30 Sep 2014
P2=P(samparray);
should work.
1+round(prand*999) isn't the best way to get randomly distributed integers between 1 and 1000 as the probability of 1 and 1000 (the limits) is lower than for the other values. Better would be 1+fix(prand*1000) or randi(1000,100,100).
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!