objectif
Intervalle de confiance par bootstrap pour la moyenne.
code minimal
import numpy as np
from scipy.stats import bootstrap
rng = np.random.default_rng(0)
x = rng.normal(size=100)
res = bootstrap((x,), np.mean, vectorized=False, n_resamples=2000, confidence_level=0.95, random_state=0)
print(round(res.confidence_interval.low, 2) <= round(np.mean(x), 2) <= round(res.confidence_interval.high, 2))
utilisation
from scipy.stats import bootstrap
import numpy as np
x = np.arange(10.0)
res = bootstrap((x,), np.median, n_resamples=500, random_state=0)
print(res.standard_error >= 0.0)
variante(s) utile(s)
from scipy.stats import bootstrap
import numpy as np
x = np.arange(5.0)
print(bootstrap((x,), np.mean, paired=False, n_resamples=200).confidence_interval is not None)
notes
- Plus robuste que les IC asymptotiques si n petit.