function [xb,yb]=elim_error(x,y,por_desv,DeltaT,TasaMuestreo);
%Funcion que filtra los posibles valores que sean incorrectos
% ya que difieren un cierto porcentaje de la media.
%Para ello, se va calculando la media para un intervalo de valores, y si la 
%diferencia con respecto a la media es mayor que el admitido por 
%el porcentaje, se introduce en esa posición la media.
%Los parámetros de entrada son los datos originales en t(x) y V(y), el
%porcentaje de desviación que se considera aceptable, el intervalo de
%tiempo que se usa para comparar con la media y la tasa de muestreo.
%los parámetros de salida son los datos filtrados tanto en t como en V

% Calculamos el número de puntos que se usan para comparar los datos
num_int = DeltaT/TasaMuestreo;      
num_int = round(num_int);         

xb      = x;		                %eje temporal filtrado
yb      = [];		                %eje en V filtrado
difer   = 0;                        %variable auxiliar

n1=length(x);
n2=length(y);

if (n1==n2)                         
    for (i=1:n1)
        %para cada intervalo de valores calculamos su 
		%media y desviacion y si la diferencia con respecto
 		%a la media es mayor que el porcentaje introducido
        %se pone el valor medio.
        if (i>num_int)
            media=mean(y(i-num_int:i));
            desviacion=std(y(i-num_int:i));
            if desviacion==0
                difer=0;
                
            else
                difer=(abs(media-y(i))/desviacion)*100;
            end
            
        else
            difer=0;
        end
        
        %si difer es cero es debido a que la diferencia con
        %respecto a la media es 0, o bien que estamos procesando sobre los
        %primeros valores antes de llegar al minimo numero sobre los que
        %comprobamos. Si difer es mayor que 0 es debido a que existe
        %diferencia con respecto a la media y ademas que estamos
        %comprobando a partir de un numero de puntos
        
        if(difer>=por_desv)
            yb(i)=media;
            
        else
            yb(i)=y(i);
        end
    end
            
else
    errordlg('ERROR: el almacen de valores porque x e y deben ser iguales','ERROR')
   xb=0;
   yb=0;
end




