%load_ext autoreload
# ! pip install git+https://github.com/avivajpeyi/pspline_psd.git -q
Example: AR process#
First, lets generate some data from an AR process and plot it.
import numpy as np
import matplotlib.pyplot as plt
from slipper.example_datasets.ar_data import get_ar_periodogram
from slipper.sample import LogPsplineSampler
from slipper.plotting import set_plotting_style
import os
np.random.seed(42)
set_plotting_style()
N_TOTAL_MCMC_STEPS = 500
OUTDIR = "out"
os.makedirs(OUTDIR, exist_ok=True)
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
Cell In[2], line 3
1 import numpy as np
2 import matplotlib.pyplot as plt
----> 3 from slipper.example_datasets.ar_data import get_ar_periodogram
4 from slipper.sample import LogPsplineSampler
5 from slipper.plotting import set_plotting_style
ModuleNotFoundError: No module named 'slipper'
Example 1: AR(3)#
mcmc = LogPsplineSampler.fit(
data=get_ar_periodogram(order=3, n_samples=1000),
outdir=OUTDIR,
sampler_kwargs=dict(
Ntotal=N_TOTAL_MCMC_STEPS,
degree=3,
)
)
fig = plt.figure(figsize=(4, 3))
mcmc.plot_model_and_data(ax=fig.gca())
fig.savefig(os.path.join(OUTDIR, 'AR3_fit.png'), dpi=100, bbox_inches='tight')
Example 2: AR(4)#
mcmc = LogPsplineSampler.fit(
data=get_ar_periodogram(order=4, n_samples=1000),
outdir=OUTDIR,
sampler_kwargs=dict(Ntotal=N_TOTAL_MCMC_STEPS),
spline_kwargs=dict(
knot_locator_type='data_peak'
)
)
fig = plt.figure(figsize=(4, 3))
mcmc.plot_model_and_data(ax=fig.gca())
ax = fig.gca()
ax.set_xscale('linear')
fig.savefig(os.path.join(OUTDIR, 'AR4_fit.png'), dpi=100, bbox_inches='tight')