Ich zweite @ MrMeritology Antwort. Eigentlich habe ich mich gefragt, ob der MWU-Test weniger leistungsfähig ist als der Test mit unabhängigen Proportionen, da die Lehrbücher, aus denen ich gelernt und die ich verwendet habe, besagten, dass der MWU nur auf ordinale (oder Intervall- / Verhältnis-) Daten angewendet werden kann.
Die unten dargestellten Simulationsergebnisse zeigen jedoch, dass der MWU-Test tatsächlich etwas leistungsfähiger ist als der Proportional-Test, während der Typ-I-Fehler gut kontrolliert wird (bei einem Bevölkerungsanteil von Gruppe 1 = 0,50).
Der Bevölkerungsanteil der Gruppe 2 wird bei 0,50 gehalten. Die Anzahl der Iterationen beträgt an jedem Punkt 10.000. Ich habe die Simulation ohne Yates Korrektur wiederholt, aber die Ergebnisse waren die gleichen.
library(reshape)
MakeBinaryData <- function(n1, n2, p1){
y <- c(rbinom(n1, 1, p1),
rbinom(n2, 1, 0.5))
g_f <- factor(c(rep("g1", n1), rep("g2", n2)))
d <- data.frame(y, g_f)
return(d)
}
GetPower <- function(n_iter, n1, n2, p1, alpha=0.05, type="proportion", ...){
if(type=="proportion") {
p_v <- replicate(n_iter, prop.test(table(MakeBinaryData(n1, n1, p1)), ...)$p.value)
}
if(type=="MWU") {
p_v <- replicate(n_iter, wilcox.test(y~g_f, data=MakeBinaryData(n1, n1, p1))$p.value)
}
empirical_power <- sum(p_v<alpha)/n_iter
return(empirical_power)
}
p1_v <- seq(0.5, 0.6, 0.01)
set.seed(1)
power_proptest <- sapply(p1_v, function(x) GetPower(10000, 1000, 1000, x))
power_mwu <- sapply(p1_v, function(x) GetPower(10000, 1000, 1000, x, type="MWU"))