Question of mean
Mostra commenti meno recenti
When I write a program about consumption (C) with 10^5 trajectories, I want to calculate the expectation of them with the command mean(C(:,j)). However, at j=1, all the C are equal to 0.86, but the mean(C(:,1))=0.859999999999891. Would anyone tell me why it happens and how to correct it please? Thank you.
Risposta accettata
Più risposte (1)
Titus Edelhofer
il 21 Mag 2012
Hi,
0.86 is not exactly representable in computers double precision representation:
fprintf('%.20f\n', 0.86)
0.85999999999999999000
Titus
3 Commenti
Oleg Komarov
il 21 Mag 2012
http://matlab.wikia.com/wiki/FAQ#Why_is_0.3_-_0.2_-_0.1_.28or_similar.29_not_equal_to_zero.3F
Tommy
il 21 Mag 2012
Walter Roberson
il 21 Mag 2012
Recode your test to
if C(i,j) * size(C,1) >= sum(C(:,j))
Categorie
Scopri di più su Web Services in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!