moving average python code example

Example 1: rolling average df

df['pandas_SMA_3'] = df.iloc[:,1].rolling(window=3).mean()

Example 2: python moving average of list

import numpy
def running_mean(x, N):
  """ x == an array of data. N == number of samples per average """
    cumsum = numpy.cumsum(numpy.insert(x, 0, 0)) 
    return (cumsum[N:] - cumsum[:-N]) / float(N)
  
val = [-30.45, -2.65, 56.61, 47.13, 47.95, 30.45, 2.65, -28.31, -47.13, -95.89]
print(running_mean(val, 3))
""" [  7.83666667  33.69666667  50.56333333  41.84333333  27.01666667
   1.59666667 -24.26333333 -57.11      ]	"""

Example 3: moving averages python

df['data'].rolling(3).mean()
df['data'].shift(periods=1).rolling(3).mean()

Example 4: 12 month movinf average in python for dataframe

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
%matplotlib inline
import seaborn as sns
sns.set(style='darkgrid', context='talk', palette='Dark2')

my_year_month_fmt = mdates.DateFormatter('%m/%y')

data = pd.read_pickle('./data.pkl')
data.head(10)