Generate a random data with fix mean

I have a matrix with 360 elements and I need to expand it to 3600 elements with the same mean and standard deviation.

 Risposta accettata

Wayne King
Wayne King il 7 Gen 2014
Modificato: Wayne King il 7 Gen 2014
You don't say the size of your matrix, you just tell us the number of elements. You also do not give us any information about the distribution -- is it Gaussian?
Xstart = randn(360,1);
meanX = mean(Xstart);
stdX = std(Xstart);
Xend = [Xstart ; stdX*randn(3600-360,1)+meanX];

2 Commenti

Thank you very much
Of course repmat() also meets the requirements (or lack thereof).
vector3600 = repmat(vector360, [1, 10]);

Accedi per commentare.

Più risposte (2)

Ahmed Hussein
Ahmed Hussein il 7 Gen 2014
The matrix is [1,360] and the distribution is Gaussian
Thank you very much

Categorie

Community Treasure Hunt

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

Start Hunting!

Translated by