again / core /estimation /inference /pi_bootstrap.py
Beam2513's picture
Upload 127 files
798602c verified
# stats/inference/pi_bootstrap.py
import numpy as np
def pi_bootstrap(
*,
data,
alpha,
B,
):
"""
Bootstrap prediction interval:
average of bootstrap quantiles.
"""
n = len(data)
boot_intervals = np.array([
np.quantile(
np.random.choice(data, size=n, replace=True),
[alpha / 2, 1 - alpha / 2],
)
for _ in range(B)
])
return boot_intervals.mean(axis=0)