Hypothesetests voor grote gegevens moeten rekening houden met het gewenste niveau van verschil, in plaats van of er een verschil is of niet. Je bent niet geïnteresseerd in de H0 dat de schatting precies 0 is. Een algemene benadering zou zijn om te testen of het verschil tussen de nulhypothese en de waargenomen waarde groter is dan een bepaalde afkapwaarde.
Een eenvoudig voorbeeld met de T-test: u kunt de volgende aannames doen voor grote steekproefgroottes, op voorwaarde dat u gelijke steekproefgrootten en standaarddeviaties heeft in beide groepen, en $ \ bar {X_1}> \ bar { X_2} $: $$ T = \ frac {\ bar {X1} - \ bar {X2} - \ delta} {\ sqrt {\ frac {S ^ 2} {n}}} + \ frac {\ delta} { \ sqrt {\ frac {S ^ 2} {n}}} \ approx N (\ frac {\ delta} {\ sqrt {\ frac {S ^ 2} {n}}}, 1) $$ vandaar $$ T = \ frac {\ bar {X1} - \ bar {X2}} {\ sqrt {\ frac {S ^ 2} {n}}} \ circa N (\ frac {\ delta} {\ sqrt {\ frac {S ^ 2} {n}}}, 1) $$
als uw nulhypothese $ H_0: \ bar {X1} - \ bar {X2} = \ delta $ impliceert:
$$ \ frac {\ bar {X1} - \ bar {X2} - \ delta} {\ sqrt {\ frac {S ^ 2} {n}}} \ ongeveer N (0,1) $$
Dit kunt u gemakkelijk gebruiken om te testen op een significant en relevant verschil. In R kun je gebruik maken van de niet-concentraliteitsparameter van de T-distributies om dit resultaat ook voor kleinere steekproefgroottes te generaliseren. Houd er rekening mee dat dit een eenzijdige test is, het alternatief $ H_A $ is $ \ bar {X1} - \ bar {X2}> \ delta $.
mod.test <- functie (x1, x2, dif, ...) {gem. X1 <- gemiddelde (x1) gem. X2 <- gemiddelde (x2) sd.x1 <- sd (x1) sd.x2 <- sd (x2 ) sd.comb <- sqrt ((sd.x1 ^ 2 + sd.x2 ^ 2) / 2) n <- lengte (x1) t.val <- (abs (avg.x1-avg.x2)) * sqrt (n) /sd.comb ncp <- (dif * sqrt (n) /sd.comb) p.val <- pt (t.val, n-1, ncp = ncp, lower.tail = FALSE) return (p .val)} n <- 5000test1 <- replicate (100, t.test (rnorm (n), rnorm (n, 0.05)) $ p.value) tabel (test1<0.05) test2 <- replicate (100, t. test (rnorm (n), rnorm (n, 0,5)) $ p.value) tabel (test2<0.05) test3 <- repliceren (100,
mod.test (rnorm (n), rnorm (n, 0,05), dif = 0,3)) tabel (test3<0.05) test4 <- repliceren (100, mod.test (rnorm (n), rnorm (n, 0,5), dif = 0.3)) table (test4<0.05)
Welke geeft:
>-tabel (test1<0.05) FALSE TRUE 24 76 >-tabel (test2<0 .05) TRUE 100 >-tabel (test3<0.05) FALSE 100 >-tabel (test4<0.05) TRUE 100