Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

module 'pandas' has no attribute 'rolling_mean'

Tags:

python

pandas

I am trying to build a ARIMA for anomaly detection. I need to find the moving average of the time series graph I am trying to use pandas 0.23 for this

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')  

error:Traceback (most recent call last): File "C:\Program Files\Python36\lastmainprogram.py", line 74, in moving_avg = pd.rolling_mean(ts_log,12) AttributeError: module 'pandas' has no attribute 'rolling_mean'

like image 909
Pruce Uchiha Avatar asked May 23 '18 07:05

Pruce Uchiha


2 Answers

I believe need change:

moving_avg = pd.rolling_mean(ts_log,12) 

to:

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

because old pandas version code below pandas 0.18.0

like image 92
jezrael Avatar answered Sep 20 '22 13:09

jezrael


Change:

moving_avg = pd.rolling_mean(ts_log,12) 

to:

rolmean = pd.Series(timeseries).rolling(window=12).mean()  rolstd = pd.Series(timeseries).rolling(window=12).std() 
like image 38
Brahmaiahchowdary Avatar answered Sep 20 '22 13:09

Brahmaiahchowdary