How to: Delete nums if before NaN
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
I have the following data (matrix).
I need to delete it if there is only 1 datapoint, 2 or more should stay. so in this example, -12.5 should be deleted.
Matrix=[NaN;NaN;-12.5000000000000;NaN;NaN;-8.90000000000000;-9.20000000000000;NaN;NaN;-9.60000000000000;-9.60000000000000;-9.60000000000000;NaN;]
Condition:
If num - 1 index = NaN and num + 1 = NaN
Delete that row
end
NaN
NaN
-12,5000000000000
NaN
NaN
-8,90000000000000
-9,20000000000000
NaN
NaN
-9,60000000000000
-9,60000000000000
-9,60000000000000
NaN
thank you
1 comentario
Respuesta aceptada
Jan
el 30 de En. de 2013
Editada: Jan
el 30 de En. de 2013
value = [NaN, NaN, -12.5, NaN, NaN, -8.9, -9.2, NaN, ...
NaN, -9.6, -9.6, -9.6, NaN];
index = strfind(isnan(value), [true, false, true]);
value(index + 1) = [];
[EDITED] Perhaps you need a transpose(value), because strfind requires a row vector.
1 comentario
Más respuestas (0)
Ver también
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!