Pengujian hipotesis untuk data besar harus mempertimbangkan tingkat perbedaan yang diinginkan, daripada apakah ada perbedaan atau tidak. Anda tidak tertarik pada H0 bahwa perkiraannya tepat 0. Pendekatan umum adalah untuk menguji apakah perbedaan antara hipotesis nol dan nilai yang diamati lebih besar dari nilai cut-off yang diberikan.
X1¯>X2¯
T=X1¯−X2¯−δS2n−−−√+δS2n−−−√≈N(δS2n−−−√,1)
T=X1¯−X2¯S2n−−−√≈N(δS2n−−−√,1)
H0:X1¯−X2¯=δ
X1¯−X2¯−δS2n−−−√≈N(0,1)
HAX1¯−X2¯>δ
mod.test <- function(x1,x2,dif,...){
avg.x1 <- mean(x1)
avg.x2 <- mean(x2)
sd.x1 <- sd(x1)
sd.x2 <- sd(x2)
sd.comb <- sqrt((sd.x1^2+sd.x2^2)/2)
n <- length(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 <- 5000
test1 <- replicate(100,
t.test(rnorm(n),rnorm(n,0.05))$p.value)
table(test1<0.05)
test2 <- replicate(100,
t.test(rnorm(n),rnorm(n,0.5))$p.value)
table(test2<0.05)
test3 <- replicate(100,
mod.test(rnorm(n),rnorm(n,0.05),dif=0.3))
table(test3<0.05)
test4 <- replicate(100,
mod.test(rnorm(n),rnorm(n,0.5),dif=0.3))
table(test4<0.05)
Pemberian yang mana :
> table(test1<0.05)
FALSE TRUE
24 76
> table(test2<0.05)
TRUE
100
> table(test3<0.05)
FALSE
100
> table(test4<0.05)
TRUE
100