我正在尝试建立一个ARIMA进行异常检测。我需要找到时间序列图的移动平均值,为此我尝试使用pandas 0.23
import pandas as pd import numpy as np from statsmodels.tsa.stattools import adfuller import matplotlib.pylab as plt from matplotlib.pylab import rcParams rcParams['figure.figsize'] = 15, 6 dateparse = lambda dates: pd.datetime.strptime(dates, '%Y-%m') data = pd.read_csv('AirPassengers.csv', parse_dates=['Month'], index_col='Month',date_parser=dateparse) data.index ts = data['#Passengers'] ts.head(10) plt.plot(ts) ts_log = np.log(ts) plt.plot(ts_log) moving_avg = pd.rolling_mean(ts_log,12) # here is the error pd.rolling_mean plt.plot(ts_log) plt.plot(moving_avg, color='red')
错误:跟踪(最近一次调用最近):文件“ C:\ Program Files \ Python36 \ lastmainprogram.py”,行74,在moving_avg = pd.rolling_mean(ts_log,12)中AttributeError:模块’pandas’没有属性’rolling_mean ‘
我相信需要改变:
moving_avg = pd.rolling_mean(ts_log,12)
至:
moving_avg = ts_log.rolling(12).mean()
因为下面的旧熊猫版本代码 pandas 0.18.0
pandas 0.18.0