Is there any difference between rand(n,1) and unifrnd(0, 1, n, 1)?
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Fred
am 18 Sep. 2014
Beantwortet: Anne van Rossum
am 29 Jun. 2016
Is there any difference between
rand(n,1)
and
unifrnd(0, 1, n, 1)?
0 Kommentare
Akzeptierte Antwort
Youssef Khmou
am 18 Sep. 2014
They both generate sample from uniform distribution, unifrnd offers a possibility to enter the parameters while with rand you need to adjust them, example of uniform distribution of interval [5,10] with size of 400 :
h1=unifrnd(5,10,1,400);
h2=5+5*rand(1,400); % same pdf
3 Kommentare
Weitere Antworten (1)
Anne van Rossum
am 29 Jun. 2016
There is less error checking in rand, which can be at times preferred... For example, if you need to generated random numbers between a and b, and it doesn't matter if a > b.
a = 5
b = -5
Then:
a+(b-a)*rand(1,400)
But you'll need to make sure a and b are properly ordered for unifrnd:
if (b < a)
[a, b] = deal(b, a);
end
unifrnd(a,b,1,400)
Or else your result will be a vector of NaNs.
0 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!