I should calculate sample mean ms and variance
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I should calculate sample mean ms and variance vs and for each I calculated ms and vs calculate their relative errors in percent, than print it.
I know, that output should be something like that:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1218882/image.jpeg)
but I got only this:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1218887/image.jpeg)
I don't understang what is going wrong.
% Here is my code
m = 10 ;
v = 3 ;
for N = [1 2 5 10.^[ 1 : 5 ] ]
ms = mean( N ) ; % sample mean
vs = var( N ) ; % sample variance
rems = abs(ms-0.5)/0.5 * 100 ;
revs = abs(vs-1/12)/(1/12) * 100 ;
fprintf("Vector length N: %6d, mean: %10.6f, variance: %10.6f, mean error: %10.6f%%, variance error: %10.6f%% \n", N, ms, vs, rems, revs)
end
1 Kommentar
Torsten
am 4 Dez. 2022
Bearbeitet: Torsten
am 4 Dez. 2022
rems = abs(ms-0.5)/0.5 * 100 ;
revs = abs(vs-1/12)/(1/12) * 100 ;
0.5 as mean and 1/12 as variance are the theoretical values for mean and variance of a uniform distribution on the interval [0 1].
Of course, you will have to change them and insert here the theoretical values for mean and variance of your data arrays.
Antworten (1)
Walter Roberson
am 4 Dez. 2022
for N = [1 2 5 10.^[ 1 : 5 ] ]
at each point inside the loop, N will be a scalar value that is one of the values indicated
ms = mean( N ) ; % sample mean
mean of a scalar is the value itself.
vs = var( N ) ; % sample variance
variance of a scalar is 0.
Siehe auch
Kategorien
Mehr zu Elementary Math finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!