How can I create a vector of 10 random numbers?

232 views (last 30 days)
I am looking to create a vector of 20 random numbers and then use 10 othjer random numbers to replace 10 of the data points with NaN

Answers (2)

Thomas
Thomas on 22 Oct 2012
Edited: Thomas on 22 Oct 2012
IS this what you need
A=rand(20,1) % 20 random numbers use rand or randn
b=randi(20,10,1) % randomly choose 10
A(b)=NaN % replace those 10 chosen above with NaN's

Kye Taylor
Kye Taylor on 22 Oct 2012
If you use an approach like
x = rand(20,1);
idx = randi(20,10,1);
x(idx) = NaN,
you may replace less than ten numbers since there may be repeated integers in idx.
If you need to replace exactly 10 numbers every single time, try
x = rand(20,1);
idx = randperm(20);
x(idx(1:10)) = NaN;

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!