Konfidensintervall

Sampling i Python

James Chapman

Curriculum Manager, DataCamp

Konfidensintervall

  • "Värden inom en standardavvikelse från medelvärdet" inkluderar ett stort antal värden från var och en av dessa fördelningar
  • Vi definierar ett relaterat begrepp som kallas konfidensintervall
Sampling i Python

Att förutsäga vädret

  • Rapid City i South Dakota, USA, har det minst förutsägbara vädret
  • Vår uppgift är att förutsäga morgondagens högtemperatur där

En väderkarta med färger som visar hur förutsägbara olika regioner är.

Sampling i Python

Vår väderprogos

  • Punktskattning = 47°F (8,3°C)
  • Intervall för rimliga högtemperaturvärden = 40 till 54°F (4,4 till 12,8°C)
Sampling i Python

Vi har just rapporterat ett konfidensintervall!

  • 40 till 54°F är ett konfidensintervall
  • Skrivs ibland som 47 °F (40°F, 54°F) eller 47°F [40°F, 54°F]
  • ... eller 47 ± 7°F
  • 7°F är felmarginalen
Sampling i Python

Bootstrapfördelning av medelsmak

import matplotlib.pyplot as plt
plt.hist(coffee_boot_distn, bins=15)
plt.show()

Ett histogram över genomsnittligt kaffebetyg.

Sampling i Python

Medelvärde för resamplingarna

import numpy as np
np.mean(coffee_boot_distn)
7.513452892

Ett histogram över genomsnittligt kaffebetyg med medelvärdet markerat av ett lodrätt svart streck.

Sampling i Python

Medelvärde plus/minus en standardavvikelse

np.mean(coffee_boot_distn)
7.513452892
np.mean(coffee_boot_distn) - np.std(coffee_boot_distn, ddof=1)
7.497385709174466
np.mean(coffee_boot_distn) + np.std(coffee_boot_distn, ddof=1)
7.529520074825534

Ett histogram över kaffebetygets medelvärden med medelvärde och standardavvikelser markerade med lodräta streck.

Sampling i Python

Kvantilmetoden för konfidensintervall

np.quantile(coffee_boot_distn, 0.025)
7.4817195
np.quantile(coffee_boot_distn, 0.975)
7.5448805

En linje för 95-procentigt konfidensintervall.

Sampling i Python

Invers kumulativ fördelningsfunktion

  • PDF: klockurvan
  • CDF: integrera för att få arean under klockurvan
  • Inv. CDF: byt x- och y-axlar

Implementeras i Python med

from scipy.stats import norm
norm.ppf(quantile, loc=0, scale=1)

Invers kumulativ fördelningsfunktion.

Sampling i Python

Standardfelmetoden för konfidensintervall

point_estimate = np.mean(coffee_boot_distn)
7.513452892
std_error = np.std(coffee_boot_distn, ddof=1)
0.016067182825533724
from scipy.stats import norm
lower = norm.ppf(0.025, loc=point_estimate, scale=std_error)
upper = norm.ppf(0.975, loc=point_estimate, scale=std_error)
print((lower, upper))
(7.481961792328933, 7.544943991671067)
Sampling i Python

Nu kör vi en övning!

Sampling i Python

Preparing Video For Download...