Matlab - Suavizado de datos por tramos

 
Vista:

Suavizado de datos por tramos

Publicado por LBH (1 intervención) el 07/10/2016 18:14:52
Hola,

Escribo para pedirles ayuda con el suavizado de curvas experimentales en Matlab.
Tengo una serie de datos ordenados en una matriz de dos columnas con un gran número de filas.
Quiero realizar un smooth, para lo que estoy recurriendo a:

%data es una matriz de 2 columnas
[m n]=size(data);
matriz_auxiliar=ones(m,1);

%SMOOTH

[m ~]=size(data);
sol=zeros(m, 2);

for span=5:n:50
sol(:,2)=smooth(data(:,1),data(:,2),span,'lowess');
sol(:,1)=data(:,1)
%el resultado de smooth es un vector columna


Pues bien, esto me realiza perfectamente el smoothing que le indico pero lo que me gustaría es poder aplicar varios smooth distintos a esta curva al mismo tiempo, es decir, determinar tres intervalos para en cada uno de ellos aplicar un smooth diferente.
Lo único que se me ocurre es dividir mi matriz en tres submatrices y aplicar a cada una de ellas el smooth correspondiente, pero esto me genera más trabajo a la hora de pilotear.

Espero que se les ocurran mejores ideas y se animen a ayudarme. Gracias de antemano.

Saludos
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