how to draw random numbers from the vector

6 次查看(过去 30 天)
Hi, i have drawn a distribution based on on the generated vector of random numbers.
My question is:
  1. how to draw randomly 10 numbers, and , therefore, 10 values of that distribution.
  2. if it's impossible to find the values of this distribtution, how to simply draw 10 random numbers from , for example, vector of 1000 numbers.
Thanks.

采纳的回答

Jos (10584)
Jos (10584) 2014-3-19
If V is your vector of numbers, and N the number of values you want from it, there are various options:
V = 1:2:20, N = 5 % example data
R1 = V(ceil(numel(V)*rand(N,1)) % N random numbers with replacement
R2a = V(randperm(numel(V),N))) % N random values from V without replacement
R2b = randsample(V,N) % same, if you have the Statistics Toolbox
% and many more

更多回答(1 个)

José-Luis
José-Luis 2014-3-19
doc ranperm
x = rand(1000,1); %could be any other distribution, please see documentation
1.
rand(10,1); %smaller sample from the same distrubution
2.
your_vals = x(randperm(1000,10)); %ten numbers from the first sample

产品

Community Treasure Hunt

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

Start Hunting!

Translated by