Bootstrapping av ett konfidensintervall
Bootstrap är ett användbart verktyg för att bedöma variabiliteten i data. I den här övningen skriver du en egen bootstrapping-funktion som returnerar ett bootstrappat konfidensintervall.
Funktionen tar tre parametrar: en tvådimensionell array med tal (data), en lista med percentiler att beräkna (percentiles) och antalet bootstrap-iterationer att använda (n_boots). Den använder funktionen resample för att skapa ett bootstrappat urval och upprepar sedan detta många gånger för att beräkna konfidensintervallet.
Den här övningen är en del av kursen
Maskininlärning för tidsseriedata i Python
Övningsinstruktioner
- Funktionen ska loopa över antalet bootstrap-iterationer (givet av parametern
n_boots) och:- Ta ett slumpmässigt urval av data, med återläggning, och beräkna medelvärdet av detta urval
- Beräkna percentilerna för
bootstrap_meansoch returnera resultatet
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
from sklearn.utils import ____
def bootstrap_interval(data, percentiles=(2.5, 97.5), n_boots=100):
"""Bootstrap a confidence interval for the mean of columns of a 2-D dataset."""
# Create our empty array to fill the results
bootstrap_means = np.zeros([n_boots, data.shape[-1]])
for ii in range(____):
# Generate random indices for our data *with* replacement, then take the sample mean
random_sample = ____
bootstrap_means[ii] = random_sample.mean(axis=0)
# Compute the percentiles of choice for the bootstrapped means
percentiles = ____(bootstrap_means, percentiles, axis=0)
return percentiles