CODE1:
import numpy as np
import matplotlib.pyplot as plt%matplotlib auto"""
AR(1):x[t]=rho*x[t-1]+epsilon
"""
num = 500
epsilon = np.random.normal(0,1,num)
x = np.empty(num)"""
非平穩AR(1)
"""
t=np.linspace(1,500,500)
rho = 1
x[0] = 0
for i in range(1,num):x[i] = 0.3+0.5*t[i]+rho*x[i-1]+epsilon[i]
plt.subplot(111,title = "AR({0}):x[t]=0.3+0.5t+{1}*x[t-1]+epsilon".format(1,rho))
plt.plot(x)plt.show()
CODE2:
import numpy as np
import matplotlib.pyplot as plt%matplotlib auto
num = 500
epsilon = np.random.normal(0,1,num)
x_1 = np.empty(num)
x_2 = np.empty(num)
x_3 = np.empty(num)
x_4 = np.empty(num)
x_5 = np.empty(num)
x_6 = np.empty(num)t=np.linspace(1,500,500)
x_1[0]=0
for i in range(1,num):x_1[i]=0.5+0.3*t[i]+epsilon[i]rho = 1
x_2[0] = 0
for i in range(1,num):x_2[i] = 0.3+rho*x[i-1]+epsilon[i]plt.subplot(211)
plt.plot(t,x_1,label='y_t=0.5+0.3t+epsilon')
plt.plot(t,x_2,label='y_t=0.3+y_{t-1}+epsilon')
plt.legend()x_3[0]=0
for i in range(1,num):x_3[i]=0.5+0.3*t[i]+epsilon[i]x_4[0]=0
for i in range(1,num):x_4[i] = 0.5+epsilon[i]x_5[0]=0
for i in range(1,num):x_5[i] = 0.3+rho*x[i-1]+epsilon[i]x_6[0]=0
for i in range(1,num):x_6[i] = 0.3+epsilon[i]plt.subplot(212)
plt.plot(t,x_4,label='Trend stationary')
plt.plot(t,x_6,label='Difference stationary')plt.legend()
plt.show()
CODE3:
import numpy as np
import matplotlib.pyplot as plt%matplotlib auto
num = 500
epsilon = np.random.normal(0,1,num)
x_1 = np.empty(num)
x_2 = np.empty(num)t=np.linspace(1,500,500)
x_1[0]=0
for i in range(1,num):x_1[i]=0.5+0.3*t[i]+epsilon[i]rho = 1
x_2[0] = 0
for i in range(1,num):x_2[i] = 0.3+rho*x[i-1]+epsilon[i]plt.subplot(211)
plt.plot(t,x_1,label='y_t=0.5+0.3t+epsilon')
plt.legend()
plt.subplot(212)
plt.plot(t,x_2,label='y_t=0.3+y_{t-1}+epsilon')
plt.legend()
plt.show()