# how to get the same result using rand

1 view (last 30 days)
Damien on 3 Nov 2022
Commented: Les Beckham on 3 Nov 2022
im looking to answer this question: create N = 2 random vectors and each vector with L=10^6 samples
that are uniformly distributed between [-0.5 and 0.5], Plot the histogram with 40
bins of the sum of these two vectors..
so far I am here but i when i check my random numbers it ranges from 0,1 and not (-.5, .5). Can someone else me understand what I am doing wrong.
L=10^6;
a=[-.5 5];
b=[-.5 5];
a=rand(1,L);
b=rand(1,L);
sum=(a+b);
histogram(sum,40)
title('Histogram with 40 bins for sum of the 2 vectors');

Les Beckham on 3 Nov 2022
Edited: Les Beckham on 3 Nov 2022
The documentation for rand states that it returns values "drawn from the uniform distribution in the interval (0,1)". If you want numbers between -0.5 and +0.5 simply subtract 0.5 from your a and b vectors.
Also, delete these two lines from your code. The don't do anything as you are redefining a and b in the next two lines:
a=[-.5 5];
b=[-.5 5];
Les Beckham on 3 Nov 2022
You are quite welcome.

David Hill on 3 Nov 2022
s=sum(rand(2,1e6)-.5);
histogram(s,40)

### Categories

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

R2022b

### Community Treasure Hunt

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

Start Hunting!

Translated by