Wie finde ich die Wahrscheinlichkeit eines Fehlers vom Typ II?

12

Ich weiß, dass bei einem Fehler vom Typ II H1 wahr ist, aber H0 nicht zurückgewiesen wird.

Frage

Wie berechne ich die Wahrscheinlichkeit eines Fehlers vom Typ II mit einer Normalverteilung, bei der die Standardabweichung bekannt ist?

Jeromy Anglim
quelle
1
Ich würde diese Frage wie folgt umformulieren: "Wie finde ich die Leistung eines allgemeinen Tests wie gegenüber ?" Dies ist häufig der am häufigsten durchgeführte Test. Ich weiß nicht, wie man die Leistung eines solchen Tests berechnen würde. H0:μ=μ0H1:μ>μ0
Wahrscheinlichkeitslogik

Antworten:

27

Zusätzlich zur Angabe von (Wahrscheinlichkeit eines Fehlers vom Typ I) benötigen Sie ein vollständig angegebenes Hypothesenpaar, dh , und müssen bekannt sein. (Wahrscheinlichkeit eines Fehlers vom Typ II) ist . Ich gehe von einem einseitigen . In R:αμ0μ1σβ1powerH1:μ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

Bearbeiten: Visualisierung

Geben Sie hier die Bildbeschreibung ein

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
quelle
1
Gibt es einen Tippfehler in dieser Antwort? Ich denke, was ist tatsächlich und umgekehrt. In jedem Fall ist dies ein ausgezeichneter Graph und ein Beispiel für einen R-Code! βpowβ
jdods
1
@jdods In der Tat lower.tail=FALSEfehlte ein. Vielen Dank!
Caracal
@caracal Könnten Sie Laien erklären, warum wir einen p-Wert (Risiko eines Fehlers vom Typ 1) ohne Berücksichtigung des Beta berechnen können, aber wir müssen Alpha angeben, um das Risiko eines Fehlers vom Typ 2 messen zu können? Ich habe das Gefühl, etwas zu vermissen. Vielen Dank für Ihre hervorragende Antwort.
Cystack
1
@Cystack Die genaue Bedeutung eines p-Werts, eines Fehlers vom Typ 1 und eines Fehlers vom Typ 2 geht über das hinaus, was in einem Kommentar angegeben werden kann. Ich würde anfangen, Antworten auf Fragen wie stats.stackexchange.com/q/46856/1909 oder stats.stackexchange.com/q/129628/1909 zu suchen. Siehe auch die Felder "Verknüpft" und "Verwandte" in der oberen rechten Ecke für relevantere Inhalte.
Caracal
1

Wenn Sie nach einer benutzerfreundlichen GUI-Option zur Berechnung der Fehlerraten oder der Leistung des Typs II für viele gängige Designs suchen, einschließlich der in Ihrer Frage implizierten, sollten Sie die kostenlose Software G Power 3 ausprobieren .

Jeromy Anglim
quelle