Handboek · hoofdstuk 6Statistiek en meetonzekerheid
Van ruis op één meting tot een onderbouwd besluit: hoe zeker weet je wat je gemeten hebt?
Elke meting in Habitat heeft ruis, elke proef heeft planten die toevallig groter of kleiner uitvallen. Wie daarover beslist (een alarm, een ijking, een nieuwe lamp), moet het toeval kunnen meten. Je leert het toeval beschrijven met kansverdelingen, uitrekenen hoe precies een gemiddelde is, onzekerheden door formules heen rekenen en toetsen of een verschil echt is. Je leert ook wat een p-waarde níet zegt, en waarom zoveel gepubliceerd onderzoek niet standhield. Aan het eind beslist het brein van het station of de nieuwe groeilamp echt beter is.

- Je kan een kansverdeling (discreet of continu) gebruiken om kansen, verwachting en standaardafwijking te berekenen, en een kans als oppervlakte onder een kansdichtheid lezen.
- Je kan met de normale verdeling kansen berekenen (z-waarde, de 68-95-99,7-regel) en uitleggen waarom een zeldzame gebeurtenis bij veel metingen toch geregeld optreedt.
- Je kan de standaardfout s/√n afleiden uit de variantie van een som, de centrale limietstelling met een simulatie tonen en beslissen hoeveel metingen je middelt.
- Je kan een betrouwbaarheidsinterval met de z- en de t-verdeling berekenen en juist interpreteren.
- Je kan onzekerheden door een formule heen rekenen met partiële afgeleiden (kwadratisch optellen, type A en B, uitgebreide onzekerheid) en het resultaat met een Monte Carlo-simulatie controleren.
- Je kan een Welch-t-toets met de hand en in Python uitvoeren en de p-waarde, de fouten van type I en II en het onderscheidingsvermogen juist uitleggen.
- Je kan uitleggen wat een p-waarde niet zegt, en effectgrootte, meervoudig toetsen, optional stopping, pseudoreplicatie en voorregistratie in een oordeel over onderzoek betrekken.
- Je kan een vergelijkende proef ontwerpen (proefeenheid, steekproefgrootte, loting in blokken, blind meten) en uit de resultaten een onderbouwd besluit nemen.
Een brouwer die Student heette
In 1899 ging de jonge scheikundige William Sealy Gosset aan de slag bij de brouwerij van Guinness in Dublin. Guinness wilde bier van altijd dezelfde kwaliteit en liet zijn brouwers proeven doen met gerst, hop en het brouwproces. Gosset botste op een probleem dat je in dit hoofdstuk vaak tegenkomt: hij had maar een handvol metingen per proef, soms vier of vijf. De statistiek van zijn tijd was gemaakt voor honderden metingen, en gaf bij zulke kleine reeksen te grote zekerheid.
Gosset studeerde een jaar bij de statisticus Karl Pearson in Londen en rekende uit hoe het gemiddelde van een kleine steekproef schommelt als je de spreiding zelf ook uit die steekproef moet schatten. Hij controleerde zijn formule met een simulatie avant la lettre: de lichaamslengtes van 3000 gedetineerden op kaartjes, geschud en getrokken in 750 groepjes van vier. De verdeling die hij vond, heeft bredere staarten dan de normale: wie weinig metingen heeft, moet voorzichtiger zijn.
Guinness liet zijn medewerkers niet onder eigen naam publiceren. Het artikel The probable error of a mean verscheen in 1908 in het tijdschrift Biometrika, ondertekend met 'Student'. Ronald Fisher gaf de grootheid later de naam , en zo heet ze vandaag nog: de t-verdeling van Student. Elke keer dat een rekenblad of Python een betrouwbaarheidsinterval uit een handvol metingen berekent, gebruikt het de rekensom van een bierbrouwer.
Het brein van het station neemt voortdurend beslissingen op metingen met ruis: gaat het CO₂-alarm af, klopt de ijking van een sensor nog, is de nieuwe groeilamp beter dan de oude? Zonder statistiek beslist het toeval mee zonder dat iemand het merkt. Met statistiek weet je hoe groot de kans is dat je je vergist, en hoeveel metingen je nodig hebt om dat klein te maken. Dezelfde ideeën dragen de Kalman-filter (hoofdstuk 40), de regressie (41) en de evaluatie van een AI-model (42).

Wat je al weet, en de vraag van dit hoofdstuk
| wat je al kan | wat nu komt |
|---|---|
| gemiddelde en standaardafwijking (delen door ), systematische en toevallige fouten (hoofdstuk 1 van I) | kansverdelingen als model van het toeval; waarom zo gedefinieerd is |
| fouten doorrekenen met de uitersten: de absolute of relatieve fouten optellen (hoofdstuk 1 van I) | kwadratisch optellen met partiële afgeleiden, en controleren met Monte Carlo |
| controlegroep, loting, blind meten, de vuistregel (hoofdstuk 2 van I) | standaardfout, betrouwbaarheidsinterval, toets, p-waarde en waar die 16 vandaan komt |
| lineariseren ; ruis op een afgeleide (hoofdstuk 1) | foutenpropagatie als lineariseren; de variantie van een verschil |
| een kans als oppervlakte onder een kromme (hoofdstuk 3) | kansdichtheid, normale en t-verdeling |
In hoofdstuk 1 van Intermediate noteerde je een herhaalde meting als en telde je fouten op om een veilige bovengrens te krijgen. Dat was eerlijk, maar ruw. Drie vragen bleven open. Hoe precies is een gemiddelde van tien metingen, tegenover één meting? Waarom tellen toevallige fouten niet gewoon op? En hoe beslis je of een verschil tussen twee groepen echt is, of toeval?
Dit hoofdstuk beantwoordt ze in vier stappen: het toeval beschrijven (kansverdelingen, de normale verdeling), een schatting omringen met haar onzekerheid (standaardfout, betrouwbaarheidsinterval, foutenpropagatie), een verschil toetsen (t-toets, p-waarde) en beslissen, met alles wat daarbij mis kan gaan. De rode draad is een vraag uit de klimaatmodule: een leverancier biedt een groeilamp aan met extra verrood licht en belooft 15 % meer sla. Is de nieuwe lamp echt beter?
Statistiek gaat over de toevallige fout: die verandert van meting tot meting en wordt kleiner als je middelt. Een systematische fout (een verkeerd geijkte sensor, een lamp die altijd op de warmste plank staat) verdwijnt niet door te middelen; ze verstopt zich zelfs achter een klein foutje. Tegen systematische fouten helpen ijken, loten en blind meten.
Kansverdelingen: het toeval als model
Een grootheid waarvan de waarde van het toeval afhangt, heet een toevalsvariabele: de volgende ADC-waarde van een sensor, het versgewicht van een slaplant, de zonnestroom van morgen. Een kansverdeling zegt welke waarden mogelijk zijn en hoe waarschijnlijk.
Discreet. Een ADC geeft gehele getallen. De verdeling is een lijst kansen met . De verwachting en de variantie zijn
Continu. Een lengte of een energie kan elke waarde aannemen. De kans op precies 5,000… kWh is nul; zinvol is de kans op een interval. Die geeft een kansdichtheid : de kans is de oppervlakte eronder (hoofdstuk 3).
De figuur toont een model voor de dagopbrengst van de 1,40 kWp zonnepanelen van de klimaatmodule in april (hoofdstuk 20 van I). Een heldere dag geeft ongeveer 7,6 kWh, maar de meeste dagen hebben wat wolken, en af en toe is het grauw. De verwachting is 5,17 kWh (het PVGIS-gemiddelde), de standaardafwijking 1,72 kWh. De kans op een slechte dag, minder dan 2,5 kWh, is de gekleurde oppervlakte: 9,1 %, ongeveer drie dagen per maand. De verdeling is scheef: de staart naar links is lang, want een dag kan veel slechter maar niet veel beter dan gemiddeld zijn.
en zijn eigenschappen van de verdeling (het 'echte' toeval). en bereken je uit metingen en zijn schattingen ervan. Omdat uit dezelfde metingen komt, liggen de metingen er gemiddeld iets dichter bij dan bij ; delen door in plaats van maakt gemiddeld precies gelijk aan (hoofdstuk 1 van I).
De afrondingsfout van een ADC
Een 10-bits ADC op 5 V rondt elke spanning af op een veelvoud van . Verandert het signaal genoeg (of is er wat ruis), dan is de afrondingsfout even waarschijnlijk overal tussen en : een uniforme verdeling. Bereken de verwachting en de standaardafwijking van , en pas toe op de TMP36 van de meetkas (10 mV/°C), op de logger van hoofdstuk 1 (afgerond op 0,1 °C) en op de NTC van het reservoir (0,087 K per ADC-stap bij 20 °C).
- voor , anders 0
- en
- de afrondingsruis van drie sensoren in °C
- 1Controle: de totale oppervlakte is . Verwachting: (symmetrisch).
- 2Variantie: , dus .
- 3TMP36: één stap is , dus .
- 4Logger op 0,1 °C: . Samen met ruis van 0,08 °C (hoofdstuk 1): . Onafhankelijke fouten tellen kwadratisch op; waarom, zie je verderop.
- 5NTC: : veel kleiner dan de ruis van ongeveer één ADC-stap die je in de proef verderop meet.
De normale verdeling
Tel veel kleine, onafhankelijke toevallige effecten op (thermische ruis, een trillende referentiespanning, een plant die net iets meer licht kreeg) en je krijgt bijna altijd dezelfde klokvorm. Abraham de Moivre vond ze in 1733 als benadering voor het aantal kop bij veel muntworpen, Carl Friedrich Gauss gebruikte ze in 1809 voor meetfouten in de sterrenkunde: de normale verdeling.
De functie heeft geen primitieve in gewone functies (hoofdstuk 3). De kans haal je uit een tabel, een rekenblad (NORM.S.DIST) of de foutfunctie: , in Python math.erf. Zo volgt de 68-95-99,7-regel:
Handige grenzen: 90 % ligt binnen , 95 % binnen en 99 % binnen . Buiten valt nog 6,3 op de 100 000.
Niet de zonnestroom van één dag (scheef, begrensd), niet de tijd tot een pomp faalt, niet een reeks met uitschieters. De normale verdeling is een goed model voor een som of gemiddelde van veel onafhankelijke bijdragen, en daardoor voor veel meetruis. Kijk altijd eerst naar een histogram voor je met rekent.
Waarom gaat het CO₂-alarm elke dag vals af?
In de woonmodule meet een CO₂-sensor om de 2 s (het ritme van hoofdstuk 29 van I). De waarschuwing staat op 1000 ppm (hoofdstuk 14 van I). Op een rustige dag is de echte waarde 900 ppm; de sensor ruist met per meting (rekenwaarde). Toch klagen de bewoners over een vals alarm per dag. Verklaar dat, en vergelijk twee remedies: het gemiddelde van 30 metingen (één minuut) of 'drie metingen op rij boven de grens'.
- , , grens
- metingen per dag
- kans op een vals alarm per meting en per dag
- hetzelfde met de twee remedies
- 1: de grens ligt vier standaardafwijkingen boven de echte waarde. .
- 2Per dag: valse alarmen. Een kans van 1 op 30 000 per meting, maar met 43 200 metingen per dag gebeurt het gemiddeld meer dan eens per dag.
- 3Minuutgemiddelde: (standaardfout, verderop afgeleid). Nu is en : nooit.
- 4Drie op rij (als de metingen onafhankelijk zijn): per meting: ook praktisch nooit, en het alarm reageert al na 6 s.
- 5Een echte stijging naar 1050 ppm wordt met het minuutgemiddelde binnen een minuut gezien, met drie-op-rij bijna meteen. Het minuutgemiddelde is ook eerlijker bij een waarde vlak onder de grens: bij 980 ppm zouden losse metingen het alarm nog ongeveer keer per dag laten afgaan, het minuutgemiddelde bijna nooit.
Hoe ruist een sensor?
Is de ruis op de NTC-meting van het reservoir normaal verdeeld, en hoe groot is ze in kelvin?
- Arduino met de NTC-deler van het reservoir (10 kΩ, A0, hoofdstuk 22 van I)
- thermosfles met water op kamertemperatuur en een referentiethermometer
- computer met Python (seriële poort uitlezen, hoofdstuk 30 van I)
- 1Hang de NTC en de referentiethermometer naast elkaar in het water. Sluit de thermosfles en wacht tien minuten.
- 2Lees 400 keer analogRead(A0), één keer per seconde, en stuur elke waarde naar de computer.
- 3Noteer de referentietemperatuur bij het begin en het eind: blijft ze gelijk, dan is elke spreiding ruis van de meting.
- 4Tel hoe vaak elke ADC-waarde voorkomt (elke waarde is een klasse) en teken het histogram.
- 5Bereken x̄ en s, teken de normale verdeling met die parameters over het histogram, en tel hoeveel metingen binnen x̄ ± s en x̄ ± 2s liggen.
| ADC-waarde | 443 | 444 | 445 | 446 | 447 | 448 | 449 |
|---|---|---|---|---|---|---|---|
| aantal | 9 | 48 | 110 | 132 | 70 | 27 | 4 |
| normaal verwacht | 10,6 | 46,9 | 107,1 | 126,9 | 77,9 | 24,8 | 4,1 |
Voorbeeldmeting (water op 20,0 °C, begin en eind gelijk): , ADC-stap. Binnen liggen 60,5 % van de metingen, binnen 96,8 %. Eerste 200 metingen: , laatste 200: .
Het histogram volgt de normale kromme goed: de ruis is de som van veel kleine bijdragen (thermische ruis van weerstanden, schommelingen van de 5 V-referentie, storing). Dat 'binnen ' 60 % geeft in plaats van 68 %, komt door de gehele getallen: de grenzen vallen tussen twee klassen in, zodat een klasse helemaal mee- of niet meetelt. Vergelijk daarom liever klasse per klasse met de verwachte aantallen in de tabel.
Omrekenen: rond 20 °C is één ADC-stap (de helling van , hoofdstuk 1). De ruis op één meting is dus , en het gemiddelde van 400 metingen is °C. De twee helften verschillen maar 0,00 stap: geen drift van betekenis.
Het gemiddelde van n metingen: de standaardfout
Waarom is een gemiddelde preciezer dan één meting? Voor twee onafhankelijke toevalsvariabelen en is en
De laatste term, de covariantie, is nul als en onafhankelijk zijn: een positieve afwijking van komt even vaak samen met een positieve als met een negatieve afwijking van . Dus varianties tellen op, niet standaardafwijkingen. Voor een verschil geldt hetzelfde: (daarom was de ruis op een centrale differentie in hoofdstuk 1 ). Met volgt voor het gemiddelde van onafhankelijke metingen met dezelfde :
Er is meer: het gemiddelde wordt ook steeds normaler verdeeld, welke verdeling de metingen zelf ook hebben (als ze maar een eindige hebben). Dat is de centrale limietstelling. De figuur toont het met het scheve model van de zonnestroom in april: één dag is scheef en breed; het gemiddelde van een week is smaller () en bijna klokvormig; het gemiddelde van een maand is een smalle klok. Daarom werkt de normale verdeling zo vaak: veel meetwaarden zijn zelf al een gemiddelde of een som.
Het weer van vandaag lijkt op dat van gisteren: grauwe dagen komen in reeksen. Echte weekgemiddelden spreiden daarom meer dan , en een batterij (hoofdstuk 20 van I) dimensioneer je op een slechte reeks dagen. Hetzelfde geldt voor een sensor die langzaam verloopt: middelen verkleint de ruis, niet de drift.
De centrale limietstelling in numpy
Een simulatie maakt de stelling tastbaar. Het programma trekt 20 000 maanden van 30 dagen uit het model van de zonnestroom en berekent voor en het gemiddelde van de eerste dagen. Het vergelijkt de spreiding van die gemiddelden met en schat de kans op een slechte week (gemiddeld minder dan 4 kWh per dag).
# clt.py - hoe goed voorspelt het gemiddelde van n dagen? (model voor de zonnestroom in april)import numpy as np rng = np.random.default_rng(1)EMAX, A, B = 7.6, 2.2, 1.035 # heldere dag 7,6 kWh; vorm van de verdeling (scheef)mu = EMAX * A / (A + B) # verwachting: 5,17 kWh (PVGIS voor april)sigma = EMAX * np.sqrt(A * B / ((A + B) ** 2 * (A + B + 1)))dagen = EMAX * rng.beta(A, B, size=(20000, 30)) # 20 000 keer een maand van 30 dagen print("mu = %.2f kWh, sigma = %.2f kWh" % (mu, sigma))print(" n gemiddelde s van de gemiddelden sigma/sqrt(n) P(gem < 4 kWh)")for n in (1, 2, 7, 30): gem = dagen[:, :n].mean(axis=1) # het gemiddelde van de eerste n dagen van elke maand print("%2d %8.3f %14.3f %18.3f %11.4f" % (n, gem.mean(), gem.std(ddof=1), sigma / np.sqrt(n), np.mean(gem < 4.0)))Uitvoer:
mu = 5.17 kWh, sigma = 1.72 kWh n gemiddelde s van de gemiddelden sigma/sqrt(n) P(gem < 4 kWh) 1 5.152 1.720 1.723 0.2547 2 5.159 1.221 1.218 0.1757 7 5.168 0.651 0.651 0.0431 30 5.164 0.316 0.315 0.0001
De spreiding van de gemiddelden volgt tot op enkele duizendsten. De staart is gevoeliger: volgens de normale verdeling heeft een week kans om onder 4 kWh per dag te blijven, in de simulatie is dat . Bij zit er nog scheefheid in het gemiddelde: de lange linkerstaart van één dag sijpelt door. Voor het midden van een verdeling is de normale benadering snel goed, voor de staarten (en daar gaan alarmen en tekorten over) pas bij grotere .
rng = np.random.default_rng(seed) geeft een reproduceerbare reeks: met dezelfde seed krijg je dezelfde getallen, zodat iemand anders je resultaat kan nagaan. Een formule die je afleidt, controleer je voortaan zo: simuleer het experiment duizenden keren en vergelijk.
Hoeveel metingen middelt de klimaatmodule?
De Mega leest de NTC van het reservoir om de 2 s. Eén meting ruist 0,10 K (de proef). Voor de warmtebalans van het reservoir wil het brein de temperatuur met een standaardfout van 0,02 K. Hoeveel ADC-metingen moet de Mega per keer middelen, hoe lang duurt dat, en wat is de grens van die aanpak?
- per meting
- doel
- analogRead duurt ongeveer 0,11 ms
- n
- de meettijd
- wat middelen niet oplost
- 1, dus metingen.
- 2Meettijd: , niets tegenover de 2 s tussen twee rondes. Zo werkte hoofdstuk 25 van I ook: 100 metingen in 20,4 ms tegen de PWM-flikkering.
- 3Periodieke storing (50 Hz van het net, 490 Hz van de PWM) is geen onafhankelijke ruis: middel over een hele periode (20 ms voor 50 Hz), dan valt ze weg; middel je over een willekeurige halve periode, dan blijft er een rest die niet wegneemt.
- 4De ijking: de geijkte en hebben elk een onzekerheid die voor élke meting dezelfde is (verderop: samen ongeveer 0,07 K). Die blijft, hoe vaak je ook middelt.
Betrouwbaarheidsintervallen
Een gemiddelde zonder onzekerheid is een half antwoord. Is bekend, dan ligt in 95 % van de proeven binnen van . Draai de ongelijkheid om:
Wat betekent '95 %'? Niet dat met 95 % kans in dit interval ligt: is een vast getal, het ligt erin of niet. De 95 % gaat over de methode: herhaal de proef vaak, en 95 % van de intervallen die je zo maakt, bevat . De figuur simuleert dat met het pompje uit hoofdstuk 1 van I: veertig klassen meten elk zes keer de vultijd (, ). Elk interval is . 38 van de 40 bevatten , 2 missen: gemiddeld verwacht je er twee.
Liggen de 95 %-intervallen van twee groepen uit elkaar, dan is het verschil zeker significant. Overlappen ze een beetje, dan kan het verschil toch significant zijn: het interval van een verschil is keer (niet 2 keer) zo breed als dat van één groep, omdat varianties optellen. Bereken bij een vergelijking altijd het interval van het verschil.
De t-verdeling: weinig metingen, meer voorzichtigheid
Meestal ken je niet en schat je ze met uit dezelfde metingen. Bij weinig metingen is zelf onzeker: soms toevallig te klein, en dan wordt het interval te smal. Gosset toonde dat bij normale metingen een t-verdeling volgt met vrijheidsgraden (van de afwijkingen zijn er maar vrij, want hun som is nul).
| 90 % () | 95 % () | 99 % () | |
|---|---|---|---|
| 1 | 6,314 | 12,706 | 63,657 |
| 2 | 2,920 | 4,303 | 9,925 |
| 3 | 2,353 | 3,182 | 5,841 |
| 4 | 2,132 | 2,776 | 4,604 |
| 5 | 2,015 | 2,571 | 4,032 |
| 6 | 1,943 | 2,447 | 3,707 |
| 8 | 1,860 | 2,306 | 3,355 |
| 10 | 1,812 | 2,228 | 3,169 |
| 15 | 1,753 | 2,131 | 2,947 |
| 20 | 1,725 | 2,086 | 2,845 |
| 30 | 1,697 | 2,042 | 2,750 |
| 60 | 1,671 | 2,000 | 2,660 |
| ∞ (normaal, ) | 1,645 | 1,960 | 2,576 |
Met twee metingen () moet je keer de standaardfout nemen in plaats van 1,96 keer; met drie () nog 4,3 keer. Vanaf ongeveer 30 metingen maakt het weinig uit. Een rekenblad geeft met T.INV.2T(0,05; ν), Python met scipy.stats.t.ppf(0.975, ν).
De t-waarden zelf berekenen
Een tabel geloof je beter als je hem zelf kan maken. De kritieke waarde voor 95 % is de waarvoor de oppervlakte links 0,975 is. Het programma integreert de dichtheid met de regel van Simpson (een verfijning van de trapeziumregel uit hoofdstuk 3) en zoekt door bisectie: halveer telkens het interval waarin de oplossing ligt (hoofdstuk 36 werkt dat uit).
# twaarden.py - de kritieke t-waarden zelf berekenen, en controleren met scipyimport mathfrom scipy import stats def t_dichtheid(t, nu): """Kansdichtheid van Student-t met nu vrijheidsgraden.""" c = math.exp(math.lgamma((nu + 1) / 2) - math.lgamma(nu / 2)) / math.sqrt(nu * math.pi) return c * (1 + t * t / nu) ** (-(nu + 1) / 2) def kans_tot(t, nu, n=2000): """P(T <= t) voor t >= 0: de helft plus de oppervlakte van 0 tot t (regel van Simpson, n even).""" h = t / n som = t_dichtheid(0, nu) + t_dichtheid(t, nu) for i in range(1, n): som += (4 if i % 2 else 2) * t_dichtheid(i * h, nu) return 0.5 + som * h / 3 def t_kritiek(p, nu): """Zoek t met P(T <= t) = p door bisectie (p > 0,5).""" a, b = 0.0, 100.0 for _ in range(60): m = (a + b) / 2 if kans_tot(m, nu) < p: a = m else: b = m return (a + b) / 2 print(" nu t(95 %) scipy verschil")for nu in (1, 2, 5, 10, 30): eigen = t_kritiek(0.975, nu) print("%3d %7.4f %7.4f %.1e" % (nu, eigen, stats.t.ppf(0.975, nu), abs(eigen - stats.t.ppf(0.975, nu))))Uitvoer:
nu t(95 %) scipy verschil 1 12.7062 12.7062 2.6e-10 2 4.3027 4.3027 5.3e-11 5 2.5706 2.5706 2.1e-14 10 2.2281 2.2281 2.1e-11 30 2.0423 2.0423 6.6e-14
Eigen rekenwerk en scipy verschillen pas in de achtste decimaal of verder: de tabel klopt. Twee details. math.lgamma geeft de logaritme van ; zo loopt de berekening voor grote niet over. En voor zijn de staarten zo zwaar dat de bisectie tot moet gaan: daarom begint ze met het interval .
De groeiproef van Fundamental: hoe zeker zijn drie bakjes?
In de groeiproef van hoofdstuk 27 van F woog de klas per bakje: bij 100 % licht 98, 106 en 101 g, bij 70 % licht 74, 69 en 78 g. Bereken voor beide groepen het 95 %-betrouwbaarheidsinterval van het gemiddelde. Wat zou een naïeve berekening met 1,96 geven?
- 100 %: 98, 106, 101 g
- 70 %: 74, 69, 78 g
- voor beide groepen
- 1100 %: ; afwijkingen , , ; .
- 2Standaardfout ; halve breedte : interval .
- 370 %: , , halve breedte : .
- 4Met 1,96 in plaats van 4,303 zou het eerste interval maar zijn: meer dan twee keer te smal. Met drie metingen is de schatting zelf te onzeker om er 1,96 op te bouwen.
Foutenpropagatie: onzekerheden door een formule heen
Een resultaat uit gemeten grootheden, elk met een standaardonzekerheid (een standaardafwijking). Lineariseer (hoofdstuk 1) met partiële afgeleiden (hoofdstuk 2):
Dat is een som van onafhankelijke toevalsgrootheden, elk met een factor. Varianties tellen op, dus:
In hoofdstuk 1 van I telde je de relatieve fouten van het reservoir gewoon op: 0,24 + 0,35 + 1,32 = 1,9 %. Dat is de bovengrens, als alle fouten tegelijk maximaal en in dezelfde richting uitvallen. Kwadratisch: , dus . De grootste bron domineert: de hoogte alleen al geeft 1,32 %.
Waar komen de vandaan? De GUM, de internationale gids voor meetonzekerheid, onderscheidt type A (statistisch, uit een reeks: ) en type B (uit andere kennis): een tolerantie zonder verdere informatie wordt een uniforme verdeling, ; een resolutie geeft ; een ijkcertificaat geeft meestal zelf. Het eindresultaat noteer je met een uitgebreide onzekerheid , met voor ongeveer 95 %.
Meet je lengte én breedte met dezelfde rolmeter die 0,3 % te lang is, dan zijn die fouten niet onafhankelijk: ze gaan samen. Dan tellen ze lineair op (de covariantie is niet nul). Kwadratisch optellen mag alleen voor onafhankelijke bronnen.
Het pompdebiet opnieuw, nu met onzekerheid
In hoofdstuk 1 van I vulde het pompje zes keer een maatbeker tot de streep van 1,00 L: 41,8; 43,1; 42,4; 42,0; 43,5 en 42,6 s. De streep heeft een tolerantie van . Toen kwam er uit. Reken het opnieuw met standaardonzekerheden, en geef ook het 95 %-interval van de gemiddelde vultijd.
- , ,
- (tolerantie)
- interval voor
- met
- 1Type A: . 95 %-interval: .
- 2Type B: (uniform: zonder meer informatie is elke waarde binnen de tolerantie even waarschijnlijk).
- 3. Een quotiënt, dus relatief kwadratisch: .
- 4; .
Monte Carlo: de onzekerheid van een NTC-temperatuur
De temperatuur uit een NTC-meting is een kromme functie van drie onzekere grootheden: de ADC-waarde (ruis 1,2 stap, uit de proef), en de geijkte en uit hoofdstuk 22 van I. Twee manieren om de onzekerheid op te vinden: de formule met partiële afgeleiden (numeriek, met centrale differenties uit hoofdstuk 1), of Monte Carlo: trek duizenden keren een waarde voor elke invoer uit haar verdeling, reken telkens uit en kijk naar de verdeling van de uitkomsten.
# montecarlo.py - de onzekerheid op een NTC-temperatuur: lineair en met Monte Carloimport numpy as np T25, RV = 298.15, 10000.0waarden = {"N": 446.0, "R25": 10370.0, "B": 3913.0} # een ADC-waarde, geijkte R25 (ohm) en B (K)u = {"N": 1.2, "R25": 30.0, "B": 15.0} # standaardonzekerheden def temperatuur(N, R25, B): R = RV * (1024.0 - N) / N # spanningsdeler omgekeerd (NTC boven) return 1.0 / (1.0 / T25 + np.log(R / R25) / B) - 273.15 T0 = temperatuur(**waarden)print("T = %.3f °C" % T0)som = 0.0for x in waarden: # gevoeligheid = partiële afgeleide (centrale differentie) h = 1e-4 * waarden[x] plus, min_ = dict(waarden), dict(waarden) plus[x] += h min_[x] -= h c = (temperatuur(**plus) - temperatuur(**min_)) / (2 * h) print(" %-4s gevoeligheid %+.6f bijdrage %.3f K" % (x, c, abs(c) * u[x])) som += (c * u[x]) ** 2print("lineair: u(T) = %.3f K" % np.sqrt(som)) rng = np.random.default_rng(7)M = 200_000Ts = temperatuur(rng.normal(446.0, 1.2, M), rng.normal(10370.0, 30.0, M), rng.normal(3913.0, 15.0, M))lo, hi = np.percentile(Ts, [2.5, 97.5])print("Monte Carlo: u(T) = %.3f K, gemiddelde %.3f °C, 95 %% tussen %.3f en %.3f °C" % (Ts.std(ddof=1), Ts.mean(), lo, hi)) # waar lineariseren faalt: y = 1/x met x = 2,0 +- 0,6 (30 %)x = rng.normal(2.0, 0.6, M)y = 1 / xprint("1/x lineair: 0,500 +- 0,150; Monte Carlo: gemiddelde %.3f, mediaan %.3f, 95 %% tussen %.3f en %.3f" % (y.mean(), np.median(y), *np.percentile(y, [2.5, 97.5])))Uitvoer:
T = 20.020 °C N gevoeligheid +0.087250 bijdrage 0.105 K R25 gevoeligheid +0.002118 bijdrage 0.064 K B gevoeligheid +0.001251 bijdrage 0.019 K lineair: u(T) = 0.124 K Monte Carlo: u(T) = 0.124 K, gemiddelde 20.020 °C, 95 % tussen 19.777 en 20.264 °C 1/x lineair: 0,500 +- 0,150; Monte Carlo: gemiddelde 0.561, mediaan 0.500, 95 % tussen 0.315 en 1.211
| bron | soort | gevoeligheid | bijdrage (K) | |
|---|---|---|---|---|
| ruis op één ADC-waarde | A (uit de proef) | 1,2 stap | 0,0873 K per stap | 0,105 |
| geijkte (de vaste weerstand zit erin) | B (uit de ijking) | 30 Ω | 2,118 K per kΩ | 0,064 |
| geijkte | B (uit de ijking) | 15 K | 0,00125 | 0,019 |
| samen (kwadratisch) | 0,124 |
Formule en simulatie geven dezelfde : over een bereik van enkele stappen is bijna recht, dus lineariseren mag. De ruis op één meting is de grootste bron; middel je 28 metingen, dan wordt de grootste. De vaste weerstand van 10 kΩ telt hier niet apart, omdat de ijking de hele keten ijkte ( hangt alleen af van de verhouding ). Wie niet ijkt en met een weerstand van 1 % rekent, krijgt daar alleen al 0,13 K bij.
De laatste regel toont waar lineariseren faalt: bij met 30 % onzekerheid op is de verdeling van scheef. Het gemiddelde is 0,561 in plaats van 0,500, en het 95 %-gebied loopt van 0,31 tot 1,21, niet symmetrisch rond 0,5. Vuistregel: bij relatieve onzekerheden van meer dan ongeveer 10 % op een kromme functie, of bij grenzen (een kans, een wortel), controleer je met Monte Carlo.
Een verschil toetsen
Twee groepen, twee gemiddelden, een verschil. Is het echt, of toeval? Een hypothesetoets keert de vraag om. Stel dat er géén verschil is: de nulhypothese . Hoe verrassend zijn je gegevens dan? De maat voor die verrassing is de p-waarde: de kans om, als waar is, een resultaat te vinden dat minstens zo extreem is als het jouwe. Is kleiner dan of gelijk aan een vooraf gekozen significantieniveau (meestal 0,05), dan verwerp je .
Om 'extreem' te meten, deel je het verschil door zijn standaardfout. De standaardfout van een verschil volgt uit 'varianties tellen op':
De Welch-toets veronderstelt niet dat beide groepen dezelfde spreiding hebben; de oudere toets van Student doet dat wel. Welch kost weinig als de spreidingen gelijk zijn en beschermt als ze verschillen: gebruik hem standaard. Voor gepaarde metingen (twee sensoren op dezelfde ogenblikken, een plant voor en na) toets je de verschillen zelf: met .
| H0 is waar (geen effect) | H1 is waar (er is een effect) | |
|---|---|---|
| H0 verworpen () | fout van type I: vals alarm, kans | juist: effect gevonden, kans (onderscheidingsvermogen) |
| H0 niet verworpen | juist, kans | fout van type II: effect gemist, kans |
Een toets kan zich op twee manieren vergissen. Kies je , dan geeft hij in 5 % van de proeven zonder effect toch 'significant'. Het onderscheidingsvermogen zegt hoe vaak hij een echt effect van een bepaalde grootte vindt; dat hangt af van de grootte van het effect, en .
De Welch-toets met de hand: licht en sla
Toets met de gegevens van de groeiproef (hoofdstuk 27 van F) of 100 % licht meer sla geeft dan 70 % licht. Gebruik , tweezijdig, en controleer met Python.
- 100 %: , ,
- 70 %: , ,
- , , en een besluit
- 1Proefeenheid: het bakje. Elk bakje kreeg zijn behandeling onafhankelijk (eigen druppelaar, geloot over beide rijen), dus per groep is eerlijk geteld.
- 2en ; standaardfout van het verschil .
- 3.
- 4: bijna , omdat de spreidingen ongeveer gelijk zijn.
- 5Kritieke waarde . ligt ver voorbij: (
scipy.stats.ttest_ind(a, b, equal_var=False)geeft hetzelfde).
De dame die thee proefde
Op het landbouwproefstation van Rothamsted, ten noorden van Londen, bood de statisticus Ronald Fisher in de jaren 1920 een collega een kop thee aan. De algenonderzoekster Muriel Bristol weigerde: hij had de melk na de thee in de kop gegoten, en ze proefde het verschil. Fisher maakte er later het openingsvoorbeeld van zijn boek The Design of Experiments (1935) van, want de vraag is precies die van dit hoofdstuk: hoe toon je aan dat iemand iets kan, en niet gewoon geluk heeft?
Zijn ontwerp: acht koppen, vier met eerst melk en vier met eerst thee, in een gelote volgorde. De proefster weet dat het vier en vier is en moet de vier 'melk eerst' aanwijzen. Stel dat ze niets proeft (): dan is elke keuze van vier uit acht even waarschijnlijk. Er zijn zulke keuzes, en maar één ervan is helemaal juist. De figuur telt ze per aantal juiste:
Alle vier juist is dus overtuigend (), drie juist niet: dat haalt een gokker in bijna een kwart van de gevallen. Dat is een p-waarde in haar zuiverste vorm: tel alle uitkomsten die onder mogelijk waren, en kijk welk deel minstens zo extreem is als wat je zag. Het loten maakt die rekensom geldig: zonder loting kan de proefster bijvoorbeeld aan de kleur of de temperatuur raden.
Hoe het afliep, staat niet in Fisher's boek. Volgens een collega die erbij was, wees ze alle koppen juist aan. Fisher populariseerde ook de grens van 5 %, in zijn Statistical Methods for Research Workers (1925), als een handige vuistregel om te zien of een resultaat verder onderzoek waard is: geen heilige grens tussen waar en onwaar.
Wat een p-waarde niet zegt
De p-waarde is de meest gebruikte en meest verkeerd begrepen maat uit de wetenschap. In 2016 gaf de Amerikaanse statistiekvereniging (ASA) er een verklaring over uit. Vijf dingen die ze niet zegt:
- Niet de kans dat waar is. is de kans op zulke gegevens als waar is. Of waar is, hangt ook af van hoe aannemelijk ze vooraf was: een 'significant' resultaat voor iets onwaarschijnlijks (een lamp die sla telepathisch laat groeien) is meestal toeval.
- Niet hoe groot of belangrijk het effect is. Met genoeg metingen is 0,1 g extra sla 'significant'. Geef altijd het verschil met zijn interval, en een effectgrootte zoals Cohens (0,2 klein, 0,5 middel, 0,8 groot, als ruwe richtwaarden).
- betekent niet 'geen effect'. Afwezigheid van bewijs is geen bewijs van afwezigheid: een te kleine proef ziet een echt effect vaak niet.
- 0,049 en 0,051 verschillen niet wezenlijk. De grens van 0,05 is een afspraak.
- Niet de kans dat je resultaat 'door toeval' komt. Dat is dezelfde vergissing als de eerste.
De figuur toont waarom. Als waar is, is uniform verdeeld: elke waarde tussen 0 en 1 even waarschijnlijk, dus in 5 % van de proeven (de simulatie: 4,2 %; Welch is bij kleine groepen iets voorzichtig). Is er een echt effect, dan stapelen de p-waarden zich op bij 0, maar met zes vakjes per groep en een effect van 15 g haalt maar 55 % van de proeven de grens. En de proeven die de grens wél halen, overschatten het effect: gemiddeld 18,9 g in plaats van 15 g. Wie alleen significante resultaten publiceert, publiceert te grote effecten.
Meervoudig toetsen. Meet je 20 uitkomsten (versgewicht, drooggewicht, bladaantal, kleur, ...) bij een lamp die niets doet, dan is de kans op minstens één gelijk aan . Corrigeer (Bonferroni: toets elke uitkomst tegen ), of leg vooraf één hoofduitkomst vast. Optional stopping is dezelfde val in de tijd: toets je na elke drie planten en stop je zodra , dan vind je bij een lamp die niets doet in 19 % van de proeven een 'effect' (opdracht 6.14). Al die keuzes achteraf heten samen p-hacking. Het medicijn is voorregistratie: vraag, uitkomst, en analyse vastleggen vóór je de gegevens ziet.
In 2015 herhaalde de Open Science Collaboration 100 psychologische studies. Van de originelen was 97 % significant, van de herhalingen 36 %, en de effecten waren gemiddeld half zo groot. In 2012 meldden onderzoekers van het biotechbedrijf Amgen dat ze maar 6 van 53 baanbrekende kankerstudies konden bevestigen. Oorzaken: kleine proeven, p-hacking, publiceren wat significant is. Sindsdien winnen voorregistratie, open data en herhalingsstudies terrein; in 2019 riepen meer dan 800 wetenschappers in Nature op om het woord 'significant' als ja-neegrens te laten vallen.
Hoeveel herhalingen? Waar de 16 vandaan komt
Een proef ontwerp je zo dat ze een effect van de grootte die er voor jou toe doet, , met grote kans vindt, meestal 80 %. De standaardfout van een verschil tussen twee groepen van is . De toets verwerpt als het gemeten verschil groter is dan . Is het echte verschil , dan wil je dat het gemeten verschil in 80 % van de proeven boven die grens valt: moet standaardfouten boven de grens liggen.
De figuur geeft het onderscheidingsvermogen exact, met de t-verdeling. Een effect van een halve standaardafwijking vraagt meer dan 60 per groep; een effect van één ongeveer 17. Voor de lampproef (verderop: tussen vakjes, ) geeft de formule , dus 5; de t-verdeling geeft met 5 vakjes maar 71 % en met 6 81 %.
Een proef met te weinig herhalingen is geen goedkope versie van een goede proef. Ze vindt echte effecten zelden, en als ze er een vindt, is dat vaak een overschatting (de vorige bladzijde). Reken uit vóór je begint, en zeg eerlijk welk effect je proef wel en niet kan zien.
Habitat: de lampproef ontwerpen
Een leverancier biedt een groeilamp aan met extra verrood licht (rond 730 nm), en belooft bij hetzelfde PAR-licht 15 % meer versgewicht bij sla. De twee grote lampen boven het kweekbed (hoofdstuk 20 en 25 van I) verlichten samen het hele bed: daarmee kan je twee lamptypes niet eerlijk vergelijken. Het team heeft een proefrek met drie planken van vier vakjes, elk met een eigen klein ledpaneel, af te stellen met de PAR-meter. De leverancier levert beide spectra als klein paneel. Ontwerp de proef.
- sla: ongeveer 200 g per krop na 35 dagen (hoofdstuk 14 van I); 6 planten per vakje
- vooronderzoek (vorige teelten in het rek): vakjesgemiddelden spreiden
- relevant is een winst van 10 % (20 g): kleiner is de omschakeling niet waard
- proefeenheid en aantal
- loting en blind meten
- wat je vooraf vastlegt
- 1Proefeenheid. Het vakje, niet de plant: de zes planten in een vakje delen hetzelfde paneel en dezelfde plek. Een paneel dat iets feller brandt of een vakje dat warmer is, geeft alle zes hetzelfde voordeel. Planten tellen als herhalingen zou pseudoreplicatie zijn (Hurlbert, 1984; hoofdstuk 2 van I).
- 2Aantal. volgens de formule; met de t-verdeling geeft een vermogen van , van . Dus 6 vakjes per lamptype: precies het rek.
- 3Loting in blokken. De bovenste plank is warmer dan de onderste. Loot daarom per plank welke twee van de vier vakjes de nieuwe lamp krijgen: elke plank heeft er dan twee van elk. Ook welke zaailing in welk vakje komt, beslist het lot (alle planten uit één zaaiing).
- 4Eerlijk licht. Elk paneel afstellen op 200 µmol/(m²·s) PAR op planthoogte, gemeten met dezelfde PAR-meter; de temperatuur per plank loggen. Het verrood valt buiten PAR (400-700 nm): dat is precies het verschil dat je test.
- 5Blind wegen. Bij de oogst krijgt elke plant een code; wie weegt, kent de sleutel niet. De sleutel ligt bij iemand anders tot alle gewichten in het bestand staan.
- 6Voorregistratie. Vóór het zaaien leggen we alles vast (tabel hieronder), ook de beslisregel.
| vooraf vastgelegd (15 maart, vóór het zaaien) | keuze |
|---|---|
| onderzoeksvraag | geeft het nieuwe lamptype bij hetzelfde PAR-licht meer versgewicht dan het oude? |
| proefeenheid en | het vakje met zijn eigen paneel; 6 vakjes per lamptype, 6 planten per vakje |
| loting | per plank 2 van de 4 vakjes nieuw (numpy, seed 10); planten per vakje geloot uit één zaaiing |
| hoofduitkomst | gemiddeld versgewicht per vakje na 35 dagen, blind gewogen op code |
| analyse | Welch-toets op 6 + 6 vakjesgemiddelden, tweezijdig, , 95 %-interval voor het verschil |
| beslisregel | vervangen als het interval boven 0 ligt én het geschatte verschil minstens 20 g (10 %) is |
| bijkomend (verkennend) | drooggewicht, aantal bladeren, temperatuur per plank; niet om de beslissing te nemen |
Habitat: de lampproef analyseren
Na 35 dagen zijn de 72 planten blind gewogen. Het bestand lampproef.csv (na het openen van de sleutel) begint zo:
vakje,plank,lamp,plant,versgewicht_g 1,1,oud,1,222 1,1,oud,2,222 1,1,oud,3,215 1,1,oud,4,196 ...
Het programma middelt eerst per vakje (de proefeenheid), voert de Welch-toets uit met eigen code en controleert met scipy. Daarna doet het, ter vergelijking, wat je niet mag doen: alle planten als onafhankelijke herhalingen tellen. Dit is een voorbeelddataset, gesimuleerd met realistische spreidingen (plant ±20 g, vakje ±8 g, planken ±4 g).
# lampproef.py - is de nieuwe lamp echt beter? Analyse op het niveau van de proefeenheid (het vakje)import csvimport mathfrom collections import defaultdictfrom scipy import stats planten = defaultdict(list) # (vakje, lamp) -> versgewichten van de zes plantenwith open("lampproef.csv", newline="") as f: for rij in csv.DictReader(f): planten[(int(rij["vakje"]), rij["lamp"])].append(float(rij["versgewicht_g"])) def gem(x): return sum(x) / len(x) def var(x): # steekproefvariantie (delen door n - 1) m = gem(x) return sum((v - m) ** 2 for v in x) / (len(x) - 1) def welch(a, b): va, vb = var(a) / len(a), var(b) / len(b) se = math.sqrt(va + vb) t = (gem(a) - gem(b)) / se nu = (va + vb) ** 2 / (va ** 2 / (len(a) - 1) + vb ** 2 / (len(b) - 1)) return gem(a) - gem(b), se, t, nu, 2 * stats.t.sf(abs(t), nu) vak = {lamp: [gem(g) for (v, l), g in sorted(planten.items()) if l == lamp] for lamp in ("oud", "nieuw")}for lamp in ("oud", "nieuw"): print("%-5s vakjes: %s gem %.1f g, s %.1f g" % (lamp, " ".join("%.1f" % x for x in vak[lamp]), gem(vak[lamp]), math.sqrt(var(vak[lamp])))) d, se, t, nu, p = welch(vak["nieuw"], vak["oud"])tk = stats.t.ppf(0.975, nu)print("vakjes (n = 6 + 6): verschil %.1f g, se %.2f g, t = %.2f, nu = %.1f, p = %.3f" % (d, se, t, nu, p))print(" 95 %%-interval: %.1f tot %.1f g (scipy: p = %.3f)" % (d - tk * se, d + tk * se, stats.ttest_ind(vak["nieuw"], vak["oud"], equal_var=False).pvalue)) # zo NIET: elke plant als onafhankelijke herhaling tellen (pseudoreplicatie)alle = {lamp: [x for (v, l), g in planten.items() if l == lamp for x in g] for lamp in ("oud", "nieuw")}d2, se2, t2, nu2, p2 = welch(alle["nieuw"], alle["oud"])print("planten (n = 36 + 36): verschil %.1f g, se %.2f g, t = %.2f, p = %.4f <- te zelfzeker" % (d2, se2, t2, p2))Uitvoer:
oud vakjes: 205.7 188.3 199.3 185.5 175.5 190.3 gem 190.8 g, s 10.6 g nieuw vakjes: 205.3 215.0 218.5 199.0 202.8 194.0 gem 205.8 g, s 9.4 g vakjes (n = 6 + 6): verschil 15.0 g, se 5.78 g, t = 2.59, nu = 9.9, p = 0.027 95 %-interval: 2.1 tot 27.9 g (scipy: p = 0.027) planten (n = 36 + 36): verschil 15.0 g, se 4.29 g, t = 3.50, p = 0.0008 <- te zelfzeker
Op het niveau van de vakjes: een verschil van 15,0 g, en een 95 %-interval van 2,1 tot 27,9 g. Met de planten als herhaling lijkt het resultaat veel sterker (), maar dat is schijn: de standaardfout is te klein omdat de verschillen tussen vakjes (paneel, plek) niet meetellen, en het aantal vrijheidsgraden is opgeblazen van ongeveer 10 naar ongeveer 68. Het geschatte verschil is in beide gevallen hetzelfde; alleen de zekerheid verschilt.
De lampproef in één figuur
Alle 72 planten (kleine punten), de 12 vakjesgemiddelden (groot) en de twee groepsgemiddelden (lijnen). Links de zes vakjes met de oude lamp, rechts de zes met de nieuwe, telkens gesorteerd per plank.
- 1Eén plant zegt weinig
De lichtste plant weegt 146 g, de zwaarste 241 g. Planten in hetzelfde vakje verschillen tot 64 g: de natuurlijke spreiding (s ≈ 18 g per plant).
- 2Het vakje is de proefeenheid
Elk groot punt is het gemiddelde van zes planten onder één paneel. Vakjesgemiddelden spreiden ongeveer 10 g: dat getal hoort in de toets.
- 3Oude lamp
Gemiddelde van de zes vakjes: 190,8 g (s = 10,6 g).
- 4Nieuwe lamp
Gemiddelde van de zes vakjes: 205,8 g (s = 9,4 g).
- 5Het verschil
15,0 g, of 7,9 %, met een 95 %-interval van 2,1 tot 27,9 g. De belofte van de leverancier (15 %, 30 g) valt erbuiten.
- 6Planken verschillen
De vakjes van de onderste plank liggen bij beide lampen wat lager (gemiddeld 191 g tegenover 204 g boven). Door de loting per plank treft dat beide lampen evenveel.
Habitat: is de nieuwe lamp echt beter?
Neem het besluit met de vooraf vastgelegde regel: vervangen als het 95 %-interval van het verschil boven 0 ligt én het geschatte verschil minstens 20 g is. Weeg ook de energie mee: bij hetzelfde PAR-licht verbruikt de nieuwe lamp 5 % meer stroom (de verrode leds). Wat besluit het team, en wat doet het daarna?
- verschil 15,0 g, 95 %-interval [2,1; 27,9] g,
- lampen: 3,04 kWh per dag (93 % van 3,27 kWh, hoofdstuk 20 van I); 48 kroppen per 35 dagen
- statistisch en praktisch besluit
- de volgende stap
- 1Is er een effect? Het interval ligt helemaal boven 0 (): waarschijnlijk geeft de nieuwe lamp iets meer sla.
- 2Hoe groot? Geschat 15,0 g, of 7,9 %, onder de drempel van 20 g. Het interval loopt van 1,1 tot 14,6 %: een winst van 10 % is niet uitgesloten, maar ook niet aangetoond.
- 3De belofte. 15 % (30 g) ligt buiten het interval: de gegevens passen slecht bij de claim van de leverancier.
- 4Energie. 5 % van 3,04 kWh is 0,15 kWh per dag, 55 kWh per jaar (€ 17 aan € 0,30). In de winter, als de batterij al tekortschiet (hoofdstuk 20 van I), kost dat lichturen. Opbrengst: 7,9 % van 500 kroppen van 200 g is ongeveer 8 kg sla per jaar.
- 5Regel toepassen. De eerste voorwaarde is voldaan, de tweede niet: niet vervangen. Effectgrootte per plant: Cohens , volgens de ruwe richtwaarden 'groot', omdat planten in een geregelde kweek weinig spreiden: een willekeurige plant onder de nieuwe lamp is in 72 % van de gevallen zwaarder dan een willekeurige onder de oude (zonder effect: 50 %). In gram en procent blijft de winst bescheiden; voor een besluit tellen de eenheden die ertoe doen.
Statistiek en meetonzekerheid: formules en tabellen
Werkwijze bij een meting: bronnen oplijsten, per bron (type A of B), gevoeligheden, kwadratisch optellen, . Bij een vergelijking: proefeenheid, , loting, blind, vooraf vastgelegde analyse; rapporteer het verschil met zijn interval.
| symbool | betekenis | eenheid |
|---|---|---|
| kansdichtheid | per eenheid van x |
| symbool | betekenis | eenheid |
|---|---|---|
| kritieke t-waarde | – |
| symbool | betekenis | eenheid |
|---|---|---|
| standaardonzekerheid | eenheid van de grootheid | |
| dekkingsfactor, meestal 2 | – |
| 90 % () | 95 % () | 99 % () | |
|---|---|---|---|
| 1 | 6,314 | 12,706 | 63,657 |
| 2 | 2,920 | 4,303 | 9,925 |
| 3 | 2,353 | 3,182 | 5,841 |
| 4 | 2,132 | 2,776 | 4,604 |
| 5 | 2,015 | 2,571 | 4,032 |
| 6 | 1,943 | 2,447 | 3,707 |
| 8 | 1,860 | 2,306 | 3,355 |
| 10 | 1,812 | 2,228 | 3,169 |
| 15 | 1,753 | 2,131 | 2,947 |
| 20 | 1,725 | 2,086 | 2,845 |
| 30 | 1,697 | 2,042 | 2,750 |
| 60 | 1,671 | 2,000 | 2,660 |
| ∞ (normaal, ) | 1,645 | 1,960 | 2,576 |
| situatie | gebruik |
|---|---|
| één reeks, onbekend | |
| twee onafhankelijke groepen | Welch-toets, interval van het verschil |
| paren (zelfde plant, zelfde moment) | gepaarde t-toets op de verschillen |
| formule van onzekere grootheden | foutenpropagatie; bij grote of scheve onzekerheden Monte Carlo |
| veel uitkomsten | één hoofduitkomst vooraf, of Bonferroni () |
Waar statistiek vandaan komt en waar ze heen gaat
Statistiek is de wiskunde (W) van het onderzoeken en meten (O) en de basis van data en AI (A). Ze gebruikt de afgeleide (lineariseren, partiële afgeleiden) en de integraal (kans als oppervlakte), en ze keert terug in elk hoofdstuk waar gemeten, gefilterd, geschat of geleerd wordt. Het ontwerp van een eerlijke proef komt uit de biologie en de landbouw (Rothamsted, Guinness), maar geldt even goed voor een sensor of een algoritme.
De groeiproef met schaduwdoek: hier getoetst en met intervallen omringd.
Gemiddelde, s, fouten optellen: hier de standaardfout en kwadratisch optellen.
Controlegroep, loting, blind, pseudoreplicatie en de vuistregel met 16, hier afgeleid.
De NTC-deler en haar ijking: de bron van het onzekerheidsbudget.
Lineariseren is foutenpropagatie; ruis op een differentie is σ/(√2 h).
Partiële afgeleiden als gevoeligheden.
Een kans is een oppervlakte onder een kansdichtheid.
Middelen als filter; periodieke storing en onafhankelijke ruis.
Bisectie, numeriek integreren en simuleren, verder uitgewerkt.
Het Kalman-filter weegt metingen met hun onzekerheid: een gewogen gemiddelde (opdracht 6.16).
Intervallen op de helling van een rechte, residuen, overfitting.
Vals alarm en gemist effect heten daar vals positief en vals negatief: precisie en recall.
Kansen op falen, zeldzaam maal vaak.
In het kort
- Een kansverdeling beschrijft het toeval; bij een continue grootheid is een kans een oppervlakte , met verwachting en variantie .
- De normale verdeling: 68,3 % binnen , 95 % binnen , 99,7 % binnen . Een zeldzame gebeurtenis maal veel metingen is een geregelde gebeurtenis.
- Onafhankelijke varianties tellen op; daardoor heeft een gemiddelde de standaardfout en wordt het normaal verdeeld (centrale limietstelling). Middelen verkleint geen systematische fout en weinig bij afhankelijke ruis.
- Betrouwbaarheidsinterval: ; de 95 % gaat over de methode. Met weinig metingen is veel groter dan 1,96.
- Foutenpropagatie: ; relatief bij producten; type A en B; ; controleer kromme of grote gevallen met Monte Carlo.
- Een toets berekent hoe verrassend de gegevens zijn als er geen effect is (); Welch voor twee groepen, gepaard voor paren. Een p-waarde is niet de kans dat waar is en zegt niets over de grootte van het effect.
- Goede proeven: de juiste proefeenheid (geen pseudoreplicatie), , loting (in blokken), blind meten, voorregistratie; rapporteer het verschil met zijn interval en beslis op relevantie.
Wat je nu kent
- kansdichtheid
- Functie met totale oppervlakte 1; de kans dat de grootheid tussen en ligt, is .
- verwachting
- Het gemiddelde van een kansverdeling: (continu) of (discreet).
- variantie
- De verwachte gekwadrateerde afwijking ; de standaardafwijking is haar wortel.
- normale verdeling
- De klokvormige verdeling ; 68,3 % binnen , 95,4 % binnen , 99,7 % binnen .
- standaardfout
- De standaardafwijking van een gemiddelde: , geschat met .
- centrale limietstelling
- Het gemiddelde van veel onafhankelijke metingen is bij benadering normaal verdeeld, ook als de metingen zelf dat niet zijn.
- betrouwbaarheidsinterval
- Interval rond een schatting dat met een vooraf gekozen methode in bv. 95 % van de herhaalde proeven de echte waarde bevat: .
- t-verdeling
- De verdeling van (x̄ − μ)/(s/√n) bij normale metingen; bredere staarten dan de normale verdeling, vooral bij weinig vrijheidsgraden.
- standaardonzekerheid
- De onzekerheid op een grootheid uitgedrukt als een standaardafwijking (u); type A uit een reeks metingen, type B uit andere informatie (tolerantie, resolutie, ijkcertificaat).
- uitgebreide onzekerheid
- , met meestal : een interval dat ongeveer 95 % dekt.
- p-waarde
- De kans om, als de nulhypothese waar is, een resultaat te vinden dat minstens zo extreem is als het gemeten resultaat.
- onderscheidingsvermogen
- De kans dat een toets een echt effect van een gegeven grootte ook vindt (1 − β).
- pseudoreplicatie
- Metingen tellen als onafhankelijke herhalingen terwijl ze dezelfde behandeling niet onafhankelijk kregen (bv. alle planten onder één lamp).
- voorregistratie
- Vraag, uitkomstmaat, steekproefgrootte en analyse vastleggen vóór de gegevens bestaan.