Jak znaleźć prawdopodobieństwo błędu typu II?

12

Wiem, że błąd typu II polega na tym, że H1 jest prawdą, ale H0 nie jest odrzucany.

Pytanie

Jak obliczyć prawdopodobieństwo błędu typu II z rozkładem normalnym, gdy znane jest odchylenie standardowe?

Jeromy Anglim
źródło
1
Sformułowałbym to pytanie w następujący sposób: „jak znaleźć moc testu ogólnego, takiego jak porównaniu do H 1 : μ > μ 0 ?” Często jest to najczęściej wykonywany test. Nie wiem, jak obliczyć moc takiego testu. H.0:μ=μ0H.1:μ>μ0
probabilityislogic

Odpowiedzi:

27

αμ0μ1σβ1-mocH.1:μ1>μ0

> sigma <- 15    # theoretical standard deviation
> mu0   <- 100   # expected value under H0
> mu1   <- 130   # expected value under H1
> alpha <- 0.05  # probability of type I error

# critical value for a level alpha test
> crit <- qnorm(1-alpha, mu0, sigma)

# power: probability for values > critical value under H1
> (pow <- pnorm(crit, mu1, sigma, lower.tail=FALSE))
[1] 0.63876

# probability for type II error: 1 - power
> (beta <- 1-pow)
[1] 0.36124

Edycja: wizualizacja

wprowadź opis zdjęcia tutaj

xLims <- c(50, 180)
left  <- seq(xLims[1],   crit, length.out=100)
right <- seq(crit, xLims[2],   length.out=100)
yH0r  <- dnorm(right, mu0, sigma)
yH1l  <- dnorm(left,  mu1, sigma)
yH1r  <- dnorm(right, mu1, sigma)

curve(dnorm(x, mu0, sigma), xlim=xLims, lwd=2, col="red", xlab="x", ylab="density",
      main="Normal distribution under H0 and H1", ylim=c(0, 0.03), xaxs="i")
curve(dnorm(x, mu1, sigma), lwd=2, col="blue", add=TRUE)
polygon(c(right, rev(right)), c(yH0r, numeric(length(right))), border=NA,
        col=rgb(1, 0.3, 0.3, 0.6))
polygon(c(left,  rev(left)),  c(yH1l, numeric(length(left))),  border=NA,
        col=rgb(0.3, 0.3, 1, 0.6))
polygon(c(right, rev(right)), c(yH1r, numeric(length(right))), border=NA,
        density=5, lty=2, lwd=2, angle=45, col="darkgray")
abline(v=crit, lty=1, lwd=3, col="red")
text(crit+1,  0.03,  adj=0, label="critical value")
text(mu0-10,  0.025, adj=1, label="distribution under H0")
text(mu1+10,  0.025, adj=0, label="distribution under H1")
text(crit+8,  0.01,  adj=0, label="power", cex=1.3)
text(crit-12, 0.004,  expression(beta),  cex=1.3)
text(crit+5,  0.0015, expression(alpha), cex=1.3)
karakal
źródło
1
powβ
1
@jdods Rzeczywiście lower.tail=FALSEbrakowało. Dziękuję Ci bardzo!
caracal
@caracal, czy mógłbyś wyjaśnić laikatycznie, dlaczego możemy obliczyć wartość p (ryzyko błędu typu 1) bez uwzględnienia wersji beta, ale musimy określić wartość alfa, aby móc zmierzyć ryzyko błędu typu 2? Czuję, że czegoś mi brakuje. Dziękuję za twoją doskonałą odpowiedź.
Cystack
1
@Cystack Dokładne znaczenie wartości p, błędu typu 1, błędu typu 2 wykracza poza to, co można przekazać w komentarzu. Chciałbym zacząć szukać odpowiedzi na pytania takie jak stats.stackexchange.com/q/46856/1909 lub stats.stackexchange.com/q/129628/1909 , zobacz także pola „Połączone” i „Powiązane” w prawym górnym rogu dla bardziej trafnych treści.
caracal
1

Aby uzupełnić odpowiedź Caracal, jeśli szukasz przyjaznej dla użytkownika opcji GUI do obliczania poziomów błędów lub mocy typu II dla wielu popularnych projektów, w tym sugerowanych przez twoje pytanie, możesz sprawdzić bezpłatne oprogramowanie, G Power 3 .

Jeromy Anglim
źródło