MATLAB Answers

To get a random number

Asked by Muruganandham Subramanian on 18 Jan 2012


   Am having a incremental column matrix like, e.g. for 1st iteration, it is 100*1(double), then for 2nd iteration iteration, it will be 100*2(double), etc.. Form this, for 1st iteration, i need to get a random no (single data only). from 1st column of matrix  and for 2nd iteration, i have to get a random no. from 2nd column of matrix only.
              Thank you in advance!!@!!

  1 Comment

on 18 Jan 2012

Maybe I misunderstand but to me this question appears contradictory. How is a number random if it depends on your column as an input?


No products are associated with this question.

1 Answer

Answer by Wayne King
on 18 Jan 2012

You can use

x = randperm(100);
randomindex = x(1);

Then, use that index to choose an element from the appropriate column, say your data matrix is X

X(randomindex,1)  %choose from first column
X(randomindex,2)  %choose from 2nd column


Hi walter,
It's not working.
am having both negative and non-negative integers of 100*1, In this i have to pick single data randomly.

Walter Roberson
on 20 Jan 2012

Sorry, the references to size(X,2) should have been size(X,1)

rchoices = randperm(size(X,1));
randchoice = X(rchoices(1),IterationNumber);

It's working...
Thanks walter

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply today