模块“ pandas”没有属性“ rolling_mean”

发布于 2021-01-29 19:34:15

我正在尝试建立一个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 ‘

关注者
0
被浏览
79
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    我相信需要改变:

    moving_avg = pd.rolling_mean(ts_log,12)
    

    至:

    moving_avg = ts_log.rolling(12).mean()
    

    因为下面的旧熊猫版本代码 pandas 0.18.0



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看