Bootstrapping

Basis van inferentie in Python

Paul Savala

Assistant Professor of Mathematics

Bootstrapping

  • Bootstrapping = Steekproeven met terugleggen
    1. Kies willekeurig een steekproef
    2. Noteer deze
    3. Leg terug in de data (terugleggen)
    4. Herhaal
  • Bootstrapped steekproef = Steekproef via bootstrapping
Basis van inferentie in Python

Niet-parametrisch betrouwbaarheidsinterval

  • Niet-parametrisch alternatief voor stats.norm.interval
    • Steekproef met terugleggen
    • Bereken toetsstatistiek
    • Noteer deze
    • Herhaal
  • Levert een empirische verdeling op
Basis van inferentie in Python
salaries_df['Years of Employment']
[6, 11, 14, 3, 2, ...]
sample_1 = salaries_df['Years of Employment'].sample(n=10)

print(max(sample_1) - min(sample_1))
7
  • Herhaal dit vaak
  • Middelste 95% = 95% bootstrapped betrouwbaarheidsinterval
Basis van inferentie in Python
# Statistic function
def max_min(x):
    return max(x) - min(x)

# Data as a tuple data = (salaries_df['Years of Employment'], )
bootstrap_ci = stats.bootstrap(data, max_min, vectorized=False, n_resamples=1000)
print(bootstrap_ci)
BootstrapResult(confidence_interval=ConfidenceInterval(low=33.0, high=38.0),
standard_error=1.3843971812870597)
Basis van inferentie in Python

Normale betrouwbaarheidsintervallen

 

  • Vereist normaal verdeelde data
  • Alleen gebaseerd op gemiddelde en standaardfout
  • Inferred enkel geldig bij normale data
  • Zeer snel te berekenen

Bootstrap-betrouwbaarheidsintervallen

 

  • Werkt met elke verdeling
  • Direct uit data via resampling
  • Inferred geldig voor elke data
  • Veel trager te berekenen
Basis van inferentie in Python

Use cases voor bootstrapping

  • Bij niet-normale data
    • Gerankte data
    • Scheve data
  • Als normale betrouwbaarheidsintervallen twijfelachtig zijn
  • Werkt met elke gewenste statistiek
Basis van inferentie in Python

Laten we oefenen!

Basis van inferentie in Python

Preparing Video For Download...