Matlab - buscar valores determinados de una matriz y ordenarlos en un vector que coincida con otro vector

 
Vista:
sin imagen de perfil

buscar valores determinados de una matriz y ordenarlos en un vector que coincida con otro vector

Publicado por Maria (12 intervenciones) el 18/04/2017 12:00:03
hola a todos tengo el siguiente problema:

tengo una matriz que contiene una columna con el año otra con el mes y las otras 31 columnas son los datos diarios de una variable. Quiero buscar los valores que sean mayores o iguales que un determinado valor en la variable, y contarlos por año. Tengo una función que hace esto, pero no me sirve para matrices. ¿Como podría modificarla?.

la función es la siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function [NT20,NT]=noite_tropical(YY,var)
 
[kk]=find(var>=20);%busca los valores mayores o iguales a 20
 
 
a=YY(kk);
NT=unique(a);
for i=1:length(NT)%vector que reconoce los valores iguales
    m=NT(i);
 
   NT20(i)=length( find(a==NT(i)));%agrupa los valores iguales en un...
                                     %nuevo vector
end
 
 
NT20=NT20';

un saludo

Ofelia Martínez
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
Imágen de perfil de JESUS DAVID ARIZA ROYETH
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

buscar valores determinados de una matriz y ordenarlos en un vector que coincida con otro vector

Publicado por JESUS DAVID ARIZA ROYETH (1818 intervenciones) el 18/04/2017 18:35:36
si colocas un ejemplo en números con vectores es mucho más fácil de leer

"y las otras 31 columnas son los datos diarios de una variable " primero debes sumar por columnas entonces si lo tienes en columnas , como no das datos supongo que a son tus columnas que contienen la variable la voy a poner aleatoria :

1
2
a=randi([1,35],5,5);
b=sum(a<20,2);

y en b esta sumado en cada fila cuantos valores son menores que 20 , ahora el siguiente paso sería agrupar en filas dependiendo del mismo año, realiza un unique y para cada valor de ello realizas tu búsqueda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

buscar valores determinados de una matriz y ordenarlos en un vector que coincida con otro vector

Publicado por Maria (12 intervenciones) el 19/04/2017 10:50:59
gracias por tu ayuda.
al querer agrupar las filas por año me da el error ??? Subscript indices must either be real positive integers or logicals. ya que el vector creado contiene ceros, ¿como podría solucionarlo?
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