2012-01-28 13 views
5

Estoy adaptando el código MATLAB a R e intentando generar una forma de onda con la fórmula ARMA. ¿Existe una función equivalente R simple para filter de MATLAB para tomar coeficientes AR/MA para construir una forma de onda?R equivalente de la función de filtro de MATLAB

npts = 100; 
a = [1 0.6]; % AR coeffs 
b = [1 0.25 3]; % MA coeffs 
e = randn(npts,1); % generate gaussian white noise 
waveform = filter(b,a,e); % generate waveform 

Respuesta

2

Hmm puede no lograr que con filter función en el paquete signal?

require(signal) 
a = c(1,0.6) 
b = c(1,0.25,3) 
e = rnorm(100) 
waveform = filter(b,a,e) 
+0

Gracias. Yo usé esto también – EngrStudent

4

Sí, usted puede hacer esto usring arima.sim, por ejemplo,

arima.sim(npts, model=list(ar=a, ma=b), rand.gen=rnorm) 

Tenga en cuenta que el modelo se comprueba con respecto a la estacionariedad y que el modelo anterior no es estacionario. Si quiere algo integrado, puede especificar el orden de integración en el modelo.

+0

¿Cuál sería el orden apropiado para este modelo? – Amyunimus

+0

¿Qué pasa si está utilizando datos no sintéticos? – EngrStudent

Cuestiones relacionadas