In a matrix how to replace zero by NaN.?

335 visualizaciones (últimos 30 días)
Safi ullah
Safi ullah el 19 de Abr. de 2018
Comentada: 拓郎 下山 el 3 de Mayo de 2021
Hi every one, I have a matrix A=1×180. All values of matrix A are either zeros or negative numbers. I need to replace all the zeros by NaN, noted that zeros are also randomly distributed in matrix A. I have tried for loop but do not get the desired result. Any guidance will be appreciated thanks.
  1 comentario
拓郎 下山
拓郎 下山 el 3 de Mayo de 2021
I have the same problem.
I change 0 value to NaN value in nifti file of int16.
I try "V(V==0) = NaN;"
But, it doesn't work. Could you give me the answer?
Thank you for reading.

Iniciar sesión para comentar.

Respuesta aceptada

njj1
njj1 el 19 de Abr. de 2018

Try this:

A(A==0) = NaN;
  4 comentarios
laith awwad
laith awwad el 21 de Abr. de 2021
HOW TO NAME THE VARIABLE BECAUSE IF I RIGHT FOR EXAMPLE e = A(A==0) = NaN; GIVES ME AN ERROR
Steven Lord
Steven Lord el 21 de Abr. de 2021
If you want to keep the original array around, make a copy of it then replace the values in that copy.
A = randperm(10)
A = 1×10
9 5 7 3 8 10 2 1 4 6
B = A;
B(B > 7) = NaN
B = 1×10
NaN 5 7 3 NaN NaN 2 1 4 6
[A; B] % Use both the original vector (A) and the modified one (B)
ans = 2×10
9 5 7 3 8 10 2 1 4 6 NaN 5 7 3 NaN NaN 2 1 4 6

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Resizing and Reshaping Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by