Matlab - Cambio valor de NAN

   
Vista:
Imágen de perfil de Mauricio

Cambio valor de NAN

Publicado por Mauricio (11 intervenciones) el 20/09/2014 05:20:45
Hola

Tengo un problema con un cambio de valor dentro de una matriz cuando ejecuto cierta funcion, la matriz por ejemplo me resulta asi:

A=[3; 5; inf; 8 , NAN]

luego segun mi necesidad, hago un cambio de valor en la matriz "A", donde los INF y NAN, los convienrto en cero, aplicando los siguientes comandos:

A (A==INF)=0;
A(A==NAN)=0;

pero solo me realiza el cambio de los "INF", a cero, pero los de NAN, me lo deja igual.

* Por eso mi consulta es saber como poria ralizar este cambio de NAN a cero.

saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Cambio valor de NAN

Publicado por Celso Hilario celso.hilario.c@gmail.com (1 intervención) el 20/09/2014 08:45:09
Matlab cuenta con una función para identificar los NaN en una matriz, lo que necesitas es primero indexar las ubicaciones donde tienes datos del tipo NaN y despues volverlos cero

Prueba lo siguiente

A(isnan(A))=0

Donde lo primero que haces es indexar las ubicaciones donde tienes NaN con "isnan", despues la operación indicada vuelve 0 sin afectar los demás datos de la matriz
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

Cambio valor de NAN

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3433 intervenciones) el 20/09/2014 18:03:21
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
>> A=[3; 5; inf; 8 ; NaN]
 
A =
 
     3
     5
   Inf
     8
   NaN
 
>> A(isinf(A))=0
 
A =
 
     3
     5
     0
     8
   NaN
 
>> A(isnan(A))=0
 
A =
 
     3
     5
     0
     8
     0



Saludos.
JOSE JEREMÍAS CABALLERO
Asesoría online y Presencial en Matlab
programador en matlab
Servicios de programación matlab
jjcc94@hotmail.com
Estimado Usuario de Matlab, el correo es para servicios de cursos, asesoría y programación. Toda ayuda gratuita es vía foro.


http://matlabcaballero.blogspot.com


http://www.lawebdelprogramador.com/foros/Matlab/1371532-FORMA_DE_APRENDER_MATLAB.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar