Problem with mean function

2 visualizaciones (últimos 30 días)
Hampus
Hampus el 27 de Feb. de 2017
Comentada: James Tursa el 1 de Mzo. de 2017
Okey, so I have the two nx2 vectors "day" and "comp_r".
I want to calculate the mean for a certain day, say day 8.
condition = day(:,1) == 8;
avg_day_8 = mean( comp_r( condition, 1) );
The problem is that I get that the mean equals NaN, and I am sure that's a wrong answer.
So what am I doing wrong?

Respuestas (1)

James Tursa
James Tursa el 27 de Feb. de 2017
Editada: James Tursa el 27 de Feb. de 2017
What does this show:
sum(condition)
If sum(condition) is 0, then you will get a NaN result in the mean calculation. E.g.,
>> x = reshape(1:6,3,2)
x =
1 4
2 5
3 6
>> condition = x(:,1) < 1
condition =
0
0
0
>> mean(x(condition,1))
ans =
NaN
  2 comentarios
Hampus
Hampus el 1 de Mzo. de 2017
Yeah, but the "funny thing" is that i get an answer > 0, so there seems to be something wrong. Maybe I should re-install Matlab?
James Tursa
James Tursa el 1 de Mzo. de 2017
What does this show:
any(isnan(comp_r( condition, 1)))

Iniciar sesión para comentar.

Categorías

Más información sobre Logical en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by