Tidak, nilai-p dari distribusi asimptotik yang valid tidak selalu lebih kecil dari nilai p yang tepat. Pertimbangkan dua contoh dari tes tradisional "non-parametrik":
Tes Wilcoxon Rank-Sum untuk pergeseran lokasi (misalnya, median) untuk dua sampel ukuran independen n1 dan n2 menghitung statistik tes sebagai berikut:
- masukkan semua nilai yang diamati ke dalam satu sampel ukuran besar N=n1+n2
- peringkat nilai-nilai ini dari 1 , … , N
- jumlah peringkat untuk grup pertama, sebut ini L.+N. Seringkali, statistik uji didefinisikan sebagaiW=L.+N-n1(n1+ 1 )2 (Statistik uji ini kemudian identik dengan Mann-Whitney's U), tetapi ini tidak masalah untuk bentuk distribusi.
Distribusi tepat untuk L.+N untuk diperbaiki n1 dan n2ditemukan dengan menghasilkan semua kemungkinan kombinasi peringkat untuk grup pertama, dan menghitung jumlah dalam setiap kasus. Perkiraan asimptotik menggunakan , yaitu, perkiraan standar-normal dari statistik uji yang ditransformasikan- .(Nn1)z: =L.+n-n1( N+ 1 ) / 2(n1n2( N+ 1 ) ) / 12√∼ N( 0 , 1 )z
Demikian pula, Kruskal-Wallis-H-Test untuk pergeseran lokasi (misalnya, median) untuk sampel independen menggunakan uji statistik berdasarkan peringkat ke-jumlah di masing-masing kelompok : . Sekali lagi, distribusi yang tepat untuk H ditemukan dengan menghasilkan semua kombinasi peringkat untuk grup. Untuk 3 grup, ada kombinasi tersebut. Perkiraan asimptotik menggunakan .halR+ jjH: =12N( N+ 1 )∑j = 1hal1nj(R+ j-njN+ 12)2(Nn1) (N-n1n2)χ2p - 1
Sekarang kita dapat membandingkan bentuk distribusi dalam hal fungsi distribusi kumulatif untuk ukuran grup yang diberikan. Nilai p (sisi kanan) untuk nilai diberikan dari statistik uji sama dengan untuk distribusi kontinu. Dalam kasus diskrit, nilai p untuk (nilai ke- mungkin untuk statistik uji) adalah . Diagram menunjukkan bahwa distribusi eksak menghasilkan kadang-kadang lebih besar, kadang-kadang lebih kecil nilai-p, dalam uji-H: Untuk (ke-32 dari 36 nilai-H yang mungkin), nilai-p tepat adalah 0,075 ( dengan kode di bawah ini ), sedangkan nilai p-perkiraan adalah 0,082085 ( ). UntukF( )t1 - F( t )tmm1 - F(tm - 1)H=5sum(dKWH_08[names(dKWH_08) >= 5])
1-pchisq(5, P-1)
H=2(Kemungkinan nilai ke-15), nilai p-tepat adalah 0,425 ( sum(dKWH_08[names(dKWH_08) >= 2])
), perkiraannya sama dengan 0,3678794 ( 1-pchisq(2, P-1)
).
#### Wilcoxon-Rank-Sum-Test: exact distribution
n1 <- 5 # group size 1
n2 <- 4 # group size 2
N <- n1 + n2 # total sample size
ranks <- t(combn(1:N, n1)) # all possible ranks for group 1
LnPl <- apply(ranks, 1, sum) # all possible rank sums for group 1 (Ln+)
dWRS_9 <- table(LnPl) / choose(N, n1) # exact probability function for Ln+
pWRS_9 <- cumsum(dWRS_9) # exact cumulative distribution function for Ln+
muLnPl <- (n1 * (N+1)) / 2 # normal approximation: theoretical mean
varLnPl <- (n1*n2 * (N+1)) / 12 # normal approximation: theoretical variance
#### Kruskal-Wallis-H-Test: exact distribution
P <- 3 # number of groups
Nj <- c(3, 3, 2) # group sizes
N <- sum(Nj) # total sample size
IV <- rep(1:P, Nj) # factor group membership
library(e1071) # for permutations()
permMat <- permutations(N) # all permutations of total sample
getH <- function(rankAll) { # function to calc H for one permutation
Rj <- tapply(rankAll, IV, sum)
H <- (12 / (N*(N+1))) * sum((1/Nj) * (Rj-(Nj*(N+1) / 2))^2)
}
Hscores <- apply(permMat, 1, getH) # all possible H values for given group sizes
dKWH_08 <- table(round(Hscores, 4)) / factorial(N) # exact probability function
pKWH_08 <- cumsum(dKWH_08) # exact cumulative distribution function
Perhatikan bahwa saya menghitung distribusi tepat untuk H dengan menghasilkan semua permutasi, tidak semua kombinasi. Ini tidak perlu, dan komputasi jauh lebih mahal, tetapi lebih mudah untuk menuliskannya dalam kasus umum ... Sekarang lakukan plot membandingkan bentuk fungsi.
dev.new(width=12, height=6.5)
par(mfrow=c(1, 2), cex.main=1.2, cex.lab=1.2)
plot(names(pWRS_9), pWRS_9, main="Wilcoxon RST, N=(5, 4): exact vs. asymptotic",
type="n", xlab="ln+", ylab="P(Ln+ <= ln+)", cex.lab=1.4)
curve(pnorm(x, mean=muLnPl, sd=sqrt(varLnPl)), lwd=2, n=200, add=TRUE)
points(names(pWRS_9), pWRS_9, pch=16, col="red")
abline(h=0.95, col="blue")
legend(x="bottomright", legend=c("exact", "asymptotic"),
pch=c(16, NA), col=c("red", "black"), lty=c(NA, 1), lwd=c(NA, 2))
plot(names(pKWH_08), pKWH_08, type="n", main="Kruskal-Wallis-H, N=(3, 3, 2):
exact vs. asymptotic", xlab="h", ylab="P(H <= h)", cex.lab=1.4)
curve(pchisq(x, P-1), lwd=2, n=200, add=TRUE)
points(names(pKWH_08), pKWH_08, pch=16, col="red")
abline(h=0.95, col="blue")
legend(x="bottomright", legend=c("exakt", "asymptotic"),
pch=c(16, NA), col=c("red", "black"), lty=c(NA, 1), lwd=c(NA, 2))
Perhatikan bahwa tes ini mensyaratkan bahwa distribusi memiliki bentuk yang sama di setiap kelompok, jika tidak mereka bukan tes untuk lokasi saja.