我正在尝试构建 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)
to:
moving_avg = ts_log.rolling(12).mean()
因为下面是旧的 pandas 版本代码pandas 0.18.0 http://pandas.pydata.org/pandas-docs/stable/whatsnew/v0.18.0.html#window-functions-are-now-methods
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)