Vergleichen wir also zwei Normalverteilungen
Do this x times:
runs <- 100000
a.samples <- rnorm(runs, mean = 5)
b.samples <- rbeta(runs, mean = 0)
mc.p.value <- sum(a.samples > b.samples)/runs
Die mc.p.-Werte, die unter unser Alpha (0,05) geteilt durch x fallen, würden dann die Fehlerrate vom Typ 1 ergeben. Unser H0 ist a.samples> = b.samples. (Inspiriert von https://www.countbayesie.com/blog/2015/3/3/6-amazing-trick-with-monte-carlo-simulations )
Ich dachte jedoch, dass eine Montecarlo-Simulation die folgenden Schritte ausführen muss:
Algorithmus:
- Richten Sie eine Verteilung für die Daten f () oder f (θ) und einige H0 ein
- Wiederholen Sie die folgenden zwei Schritte viele Male: (a) Simulieren Sie einen Datensatz gemäß H0. (B) Berechnen Sie T (x) anhand der simulierten Daten
- Addiere T (X), das aus den Probendaten ausgewertet wurde
- Bestellen Sie alle T (x) s
- Der p-Wert ist der Anteil der T (x) s, der extrem oder extremer ist als der aus den Probendaten
Daher ist das erste Code-Snippet keine echte Monte-Carlo-Simulation? und ist der p-Wert gültig, denn wenn Sie ihn grafisch darstellen, erhalten Sie nicht die erwartete Fehlerrate von 5% Typ 1, die man für einen statistischen Test erwarten könnte.