ComeçarComece de graça

Ordem de estimativa do modelo: PACF

Uma ferramenta útil para identificar a ordem de um modelo AR é observar a função de autocorrelação parcial (PACF). Neste exercício, você simulará duas séries temporais, uma AR(1) e uma AR(2), e calculará a amostra PACF para cada uma. Você notará que, para um AR(1), o PACF deve ter um valor significativo de defasagem 1 e, depois disso, aproximadamente zeros. E para um AR(2), a amostra PACF deve ter valores significativos de defasagem 1 e defasagem 2, e zeros depois disso.

Assim como você usou a função plot_acf em exercícios anteriores, aqui você usará uma função chamada plot_pacf no módulo statsmodels.

Este exercício faz parte do curso

Análise de séries temporais em Python

Ver curso

Instruções do exercício

  • Importe os módulos para simular dados e para plotar os dados. PACF
  • Simule um AR(1) com \(\small \phi=0.6\) (lembre-se de que o sinal do parâmetro AR está invertido)
  • Trace o gráfico PACF para simulated_data_1 usando a função plot_pacf
  • Simule um AR(2) com \(\small \phi1=0.6, \phi2=0.3\) (novamente, inverta os sinais)
  • Trace o gráfico PACF para simulated_data_2 usando a função plot_pacf

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Import the modules for simulating data and for plotting the PACF
from statsmodels.tsa.arima_process import ArmaProcess
from statsmodels.graphics.tsaplots import plot_pacf

# Simulate AR(1) with phi=+0.6
ma = np.array([1])
ar = np.array([1, -0.6])
AR_object = ArmaProcess(ar, ma)
simulated_data_1 = ___.generate_sample(nsample=5000)

# Plot PACF for AR(1)
plot_pacf(___, lags=20)
plt.show()

# Simulate AR(2) with phi1=+0.6, phi2=+0.3
ma = np.array([1])
ar = np.array([1, ___, ___])
AR_object = ArmaProcess(ar, ma)
simulated_data_2 = ___.generate_sample(nsample=5000)

# Plot PACF for AR(2)
plot_pacf(___, lags=20)
plt.show()
Editar e executar o código