Get mean of a matrix which has NaN in it

5 visualizaciones (últimos 30 días)
Project Science
Project Science el 4 de Ag. de 2025
Editada: Matt J el 4 de Ag. de 2025
I want to get the mean of each of the columns in a 3x4 array.
grades = [2,4,6; 5, NaN, 1; 7, 2,NaN]
The NaNs will cause the mean in that column to be a NaN so I think I have to first convert the matrix. I tried:
grades1 = cell2mat(grades)
But Matlab throws this error msg:
??? Cell contents reference from a non-cell array object.
Error in ==> cell2mat at 44
cellclass = class(c{1});
The grades matrix is a type double, so perhaps if I could convert it to something else, it would work, but when I tried a char array, it did work, but then I was still left with the NaN issue so converting it to something else appears tough.
*Note: I cannot use scripting for thiss. That means no for loops, if / else. I am just learning Matlab and I cannot use these yet.

Respuesta aceptada

Matt J
Matt J el 4 de Ag. de 2025
grades = [2,4,6; 5, NaN, 1; 7, 2,NaN]
grades = 3×3
2 4 6 5 NaN 1 7 2 NaN
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
mean(grades,'omitnan')
ans = 1×3
4.6667 3.0000 3.5000
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
  4 comentarios
Project Science
Project Science el 4 de Ag. de 2025
This worked, very simple - thanks!
Matt J
Matt J el 4 de Ag. de 2025
Editada: Matt J el 4 de Ag. de 2025
I am just learning Matlab ... I mentioned I'm using Matlab version 2008b.
You should really upgrade, if at all possible, or get the trial/free version of Matlab Online. It is not a very good educational exercise to learn Matlab via a 17-year old version.

Iniciar sesión para comentar.

Más respuestas (1)

Torsten
Torsten el 4 de Ag. de 2025
grades = [2,4,6; 5, NaN, 1; 7, 2,NaN]
grades = 3×3
2 4 6 5 NaN 1 7 2 NaN
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
mean(grades,1,"omitnan")
ans = 1×3
4.6667 3.0000 3.5000
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>

Categorías

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

Etiquetas

Productos


Versión

R2008b

Community Treasure Hunt

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

Start Hunting!

Translated by