从statsmodels.tsa.stattools导入adfuller def测试_平稳性(时间序列):
#Determining rolling statistics
rolmean = timseseries.rolling(window=9).mean()
rolstd = timeseries.rolling(window=9).std()
#Plotting rolling statistics
orig = plt.plot(timeseries, color='blue',label='Original')
mean = plt.plot(rolmean, color='red', label='Rolling Mean')
std = plt.plot(rolstd, color='black', label = 'Rolling Std')
plt.legend(loc='best')
plt.title('Rolling Mean & Standard Deviation')
plt.show(block=False)
#Performing Dickey-Fuller Test:
print('Results of Dickey-Fuller Test:')
dftest = adfuller(timeseries, autolag='AIC')
dfoutput = pd.Series(dftest[0:4], index=['Test Statistic', 'p-value', '#Lags Used', 'Number of Observations Used'])
for key,value in dftest[4].itema():
dfoutput['Critical Value(%s)'%key] = value
print (dfoutput,'\n')
在运行上述代码之后,我编写了以下代码
测试平稳性(df['Rose'])
-
NameError Traceback (most recent call last)
<ipython-input-111-bf44787a5c70> in <module>
----> 1 test_stationarity(df['Rose'])
<ipython-input-108-3ec6841fed27> in test_stationarity(timeseries)
3
4 #Determining rolling statistics
----> 5 rolmean = timseseries.rolling(window=9).mean()
6 rolstd = timeseries.rolling(window=9).std()
7
NameError: name 'timseseries' is not defined
请帮忙
第一行,你必须改变这个
为此:
它是timeseries
相关问题 更多 >
编程相关推荐