Memahami analisis kekuatan dari uji hipotesis statistik dapat ditingkatkan dengan melakukan beberapa dan melihat hasilnya dengan cermat.
Dengan desain, tes ukuran yang dimaksudkan untuk menolak hipotesis nol dengan kesempatan minimal ketika nol adalah benar (diharapkan yang tingkat positif palsu ). αα Ketika kita memiliki kemampuan (atau kemewahan) untuk memilih di antara prosedur-prosedur alternatif dengan properti ini, kita akan lebih menyukai prosedur yang (a) mendekati tingkat false positive nominal dan (b) memiliki peluang yang relatif lebih tinggi untuk menolak hipotesis nol ketika itu adalah tidak benar.
Kriteria kedua mengharuskan kita untuk menentukan dengan cara apa dan seberapa besar kegagalan itu tidak benar. Dalam kasus buku teks, ini mudah, karena alternatifnya terbatas dalam cakupan dan ditentukan dengan jelas. Dengan tes distribusi seperti Shapiro-Wilk, alternatifnya jauh lebih kabur: mereka "tidak normal." Ketika memilih di antara tes distribusi, maka, analis cenderung harus melakukan studi kekuatan satu kali mereka sendiri untuk menilai seberapa baik tes bekerja terhadap hipotesis alternatif yang lebih spesifik yang menjadi perhatian dalam masalah yang dihadapi.
Sebuah contoh yang dimotivasi oleh jawaban Michael Mayer berpendapat bahwa distribusi alternatif mungkin memiliki kualitas yang mirip dengan distribusi keluarga Siswa. Keluarga ini, yang diparameterisasi dengan angka (serta menurut lokasi dan skala) termasuk dalam batas besar distribusi Normal.ν≥1ν
Dalam situasi apa pun - apakah mengevaluasi ukuran tes aktual atau kekuatannya - kita harus menghasilkan sampel independen dari distribusi yang ditentukan, menjalankan tes pada setiap sampel, dan menemukan tingkat di mana ia menolak hipotesis nol. Namun, ada lebih banyak informasi yang tersedia di setiap hasil tes: nilai-P-nya. Dengan mempertahankan set nilai-P yang dihasilkan selama simulasi seperti itu, kita nanti dapat menilai tingkat di mana tes akan menolak nol untuk setiap nilai mungkin kita pedulikan. Inti dari analisis daya, kemudian, adalah subrutin yang menghasilkan distribusi nilai-P ini (baik dengan simulasi, seperti yang baru saja dijelaskan, atau - kadang-kadang - dengan rumus teoretis). Berikut adalah contoh kode . Argumennya termasukαR
rdist
, nama fungsi untuk menghasilkan sampel acak dari beberapa distribusi
n
, ukuran sampel untuk permintaan rdist
n.iter
, jumlah sampel tersebut untuk mendapatkan
...
, setiap parameter opsional untuk diteruskan ke rdist
(seperti derajat kebebasan ).ν
Parameter yang tersisa mengontrol tampilan hasil; mereka dimasukkan terutama sebagai kenyamanan untuk menghasilkan angka-angka dalam jawaban ini.
sim <- function(rdist, n, n.iter, prefix="",
breaks=seq(0, 1, length.out=20), alpha=0.05,
plot=TRUE, ...) {
# The simulated P-values.
# NB: The optional arguments "..." are passed to `rdist` to specify
# its parameters (if any).
x <- apply(matrix(rdist(n*n.iter, ...), ncol=n.iter), 2,
function(y) shapiro.test(y)$p.value)
# The histogram of P-values, if requested.
if (plot) {
power <- mean(x <= alpha)
round.n <- 1+ceiling(log(1 + n.iter * power * (1-power), base=10) / 2)
hist(x[x <= max(breaks)], xlab=paste("P value (n=", n, ")", sep=""),
breaks=breaks,
main=paste(prefix, "(power=", format(power, digits=round.n), ")", sep=""))
# Specially color the "significant" part of the histogram
hist(x[x <= alpha], breaks=breaks, col="#e0404080", add=TRUE)
}
# Return the array of P-values for any further processing.
return(x)
}
Anda dapat melihat perhitungan sebenarnya hanya membutuhkan satu baris; sisa kode memplot histogram. Sebagai ilustrasi, mari kita gunakan untuk menghitung tingkat positif palsu yang diharapkan. "Tarif" dalam bentuk jamak karena sifat-sifat suatu tes biasanya bervariasi dengan ukuran sampel. Karena sudah diketahui bahwa tes distribusi memiliki daya tinggi terhadap alternatif kecil secara kualitatif ketika ukuran sampel besar, penelitian ini berfokus pada serangkaian ukuran sampel kecil di mana tes semacam itu sering diterapkan dalam praktik: biasanya sekitar hingga Untuk menghemat perhitungan waktu, saya hanya melaporkan nilai dari hingga5100.n520.
n.iter <- 10^5 # Number of samples to generate
n.spec <- c(5, 10, 20) # Sample sizes to study
par(mfrow=c(1,length(n.spec))) # Organize subsequent plots into a tableau
system.time(
invisible(sapply(n.spec, function(n) sim(rnorm, n, n.iter, prefix="DF = Inf ")))
)
Setelah menentukan parameter, kode ini juga hanya satu baris. Ini menghasilkan output berikut:
Ini adalah penampilan yang diharapkan: histogram menunjukkan distribusi nilai-P yang hampir seragam di seluruh rentang dari hingga . Dengan ukuran nominal yang ditetapkan pada laporan simulasi antara dan dari nilai-P sebenarnya kurang dari ambang itu: ini adalah hasil yang disorot dengan warna merah. Kedekatan frekuensi ini dengan nilai nominal membuktikan bahwa tes Shapiro-Wilk memang berkinerja seperti yang diiklankan.01α=0.05,.04810.0499
(Tampaknya ada kecenderungan ke arah frekuensi tinggi dari nilai-P di dekat Ini adalah masalah kecil, karena di hampir semua aplikasi satu-satunya nilai P yang dilihat adalah atau kurang.)10.2
Mari kita beralih sekarang untuk menilai kekuatan. Rentang nilai penuh dari untuk distribusi t Student dapat dipelajari dengan cukup dengan menilai beberapa contoh dari sekitar ke bawah ke . Bagaimana saya tahu itu? Saya melakukan beberapa pendahuluan menggunakan jumlah iterasi yang sangat kecil (dari hingga ), yang tidak membutuhkan waktu sama sekali. Kode sekarang memerlukan loop ganda (dan dalam situasi yang lebih kompleks kita sering membutuhkan loop tiga atau empat kali lipat untuk mengakomodasi semua aspek yang kita perlu bervariasi): satu untuk mempelajari bagaimana kekuatan bervariasi dengan ukuran sampel dan yang lain untuk mempelajari bagaimana bervariasi dengan derajat kebebasan. Namun, sekali lagi, semuanya dilakukan hanya dalam satu baris kode (yang ketiga dan terakhir):νν=100ν=11001000
df.spec <- c(64, 16, 4, 2, 1)
par(mfrow=c(length(n.spec), length(df.spec)))
for (n in n.spec)
for (df in df.spec)
tmp <- sim(rt, n, n.iter, prefix=paste("DF =", df, ""), df=df)
Sebuah studi kecil tentang tablo ini memberikan intuisi yang baik tentang kekuasaan. Saya ingin menarik perhatian pada aspek yang paling menonjol dan berguna:
Ketika derajat kebebasan berkurang dari di sebelah kiri ke di sebelah kanan, semakin banyak nilai-P kecil, yang menunjukkan bahwa kekuatan untuk membedakan distribusi ini dari distribusi Normal meningkat. (Kekuatan dihitung dalam setiap judul plot: itu sama dengan proporsi area histogram yang berwarna merah.)ν=64ν=1
Ketika ukuran sampel meningkat dari di baris atas ke di bagian bawah, daya juga meningkat.n=5n=20
Perhatikan bagaimana distribusi alternatif lebih berbeda dari distribusi nol dan ukuran sampel meningkat, nilai-P mulai mengumpulkan ke kiri, tetapi masih ada "ekor" dari mereka yang merentang hingga . Ini adalah karakteristik dari studi kekuatan. Ini menunjukkan bahwa pengujian adalah pertaruhan : bahkan ketika hipotesis nol dilanggar secara mencolok dan bahkan ketika ukuran sampel kami cukup besar, pengujian formal kami mungkin gagal menghasilkan hasil yang signifikan.1
Bahkan dalam kasus ekstrim di kanan bawah, di mana sampel diambil dari distribusi t Student dengan derajat kebebasan (distribusi Cauchy), kekuatannya tidak : ada peluang bahwa sampel varian iid Cauchy tidak akan dianggap berbeda secara signifikan dari Normal pada level (yaitu, dengan kepercayaan ).2011100−86.57=13%205%95%
Kita dapat menilai kekuatan pada nilai kita pilih dengan mewarnai lebih banyak atau lebih sedikit bilah pada histogram ini. Misalnya, untuk mengevaluasi kekuatan pada , warna di dua batang kiri pada setiap histogram dan perkirakan luasnya sebagai bagian dari total.αα=0.10
(Ini tidak akan bekerja terlalu baik untuk nilai lebih kecil dari dengan angka ini. Dalam praktiknya, orang akan membatasi histogram ke nilai-P hanya dalam rentang yang akan digunakan, mungkin dari hingga , dan perlihatkan pada mereka dengan cukup detail untuk memungkinkan penilaian visual daya turun ke atau bahkan (Itulah pilihan untuk.) Pasca-pemrosesan hasil simulasi dapat memberikan lebih banyak detail.)α0.05020%α=0.01α=0.005breaks
sim
Sangat lucu bahwa begitu banyak yang dapat diperoleh dari apa, pada dasarnya, berjumlah tiga baris kode: satu untuk mensimulasikan sampel iid dari distribusi tertentu, satu untuk menerapkannya ke array distribusi nol, dan yang ketiga untuk menerapkannya ke berbagai distribusi alternatif. Ini adalah tiga langkah yang masuk ke dalam analisis kekuatan: sisanya hanya meringkas dan menafsirkan hasilnya.