Matlab - Como puedo crear una funcion que haga esto?

 
Vista:
sin imagen de perfil
Val: 2
Ha aumentado su posición en 14 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Como puedo crear una funcion que haga esto?

Publicado por Jose (2 intervenciones) el 08/03/2019 17:52:06
Hola;

la función que tengo que crear es la siguiente:

y[n]=1/4 · (x[n]+x[n-1]+x[n-2]+x[n-3])

lo que le envias es x=[1 2 3] y n=[3 4 5] esto corresponde a que en n=3, hay un punto en altura 1, en n=4, hay un punto en altura 2, osea n corresponde al eje x, el otro al y.

Ejemplo:
para crear x[n-r] he hecho esto:

function [y,n2]=RETARDADOR(x,n1,r)
y=x;
n2=n1-r

lo que no se hacer, es que ahora, el valor de las n es mas grande, ya que se desplaza y hay que crear mas puntos n y x, no se si me explico.
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
sin imagen de perfil
Val: 930
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Como puedo crear una funcion que haga esto?

Publicado por Daniel (348 intervenciones) el 10/03/2019 15:31:12
Hola,

Entiendo que lo que realmente se quiere hacer es una media móvil de x en y. Es decir, algo como

1
2
3
4
5
6
x = 1:6;
y = nan(size(x));
 
for i = 4:length(x)
    y(i) = (x(i) + x(i-1) + x(i-2) + x(i-3)) / 4;
end

donde y es ahora

1
2
3
y =
 
       NaN       NaN       NaN    2.5000    3.5000    4.5000

Saludos,
Daniel Rodríguez.
Analytics Lane
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