how to identify number of values in a column vector that are not zero values and are not NaN values?
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
George Vuong
el 19 de Ag. de 2015
Comentada: Star Strider
el 20 de Ag. de 2015
Hello,
Lets say I have a 2458 x 1 column vector in a cell array, A, that contains zeros, nonzeros, and NaN values. I would like to identify how many values are nonzero values and are not NaN values. This means that I have to filter out the zero values and NaN values. This is the current code I'm using but this portion, (A{1,1} ~= NaN), seems to not be working.
logical = (A{1,1} ~= 0) & (A{1,1} ~= NaN);
A{1,1}(~logical) = [];
length(A{1,1})
When I run the code, it has a 1 value at the row indices that contain NaN, meaning that the row index value is true...But it shouldn't be because it is a NaN value and I want to only determine the values that are nonzero and are not NaN values. I was wondering why this does not work and what I can do to fix this? I'm using 2015a btw and any help or advice would be appreciated.
0 comentarios
Respuesta aceptada
Star Strider
el 19 de Ag. de 2015
I don’t have your cell array to experiment with, but this works for my synthesised one:
A = {1, 3, 5, NaN, 7, 11, 13, 0 17};
logc = @(x) (x ~= 0) & ~isnan(x);
Idx = cellfun(logc, A);
4 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Resizing and Reshaping Matrices 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!