In [1]:
import numpy as np
import pandas as pd
import statsmodels.formula.api as smf
import matplotlib.pyplot as plt
import seaborn as sns

%matplotlib inline

In [2]:
strikes = pd.read_fwf('data/strikes.dat', header=None)
strikes.index = pd.date_range('1951-1-1', periods=len(strikes), freq='A')

In [3]:
# Add centered rolling mean
q = [2, 4, 5]
for qi in q:
    strikes['q' + str(qi)] = pd.rolling_mean(strikes.iloc[:, 0], window=2 * qi + 1, center=True)

In [4]:
strikes.head()


Out[4]:
0 q2 q4 q5
1951-12-31 4737 NaN NaN NaN
1952-12-31 5117 NaN NaN NaN
1953-12-31 5091 4546.6 NaN NaN
1954-12-31 3468 4364.2 NaN NaN
1955-12-31 4320 4075.4 4181.444444 NaN

In [5]:
strikes.shape


Out[5]:
(30, 4)

In [6]:
strikes.plot()
plt.plot(pd.ewma(strikes.iloc[:, 1], halflife=2))


Out[6]:
[<matplotlib.lines.Line2D at 0x108da9eb8>]