Menganalisis hasil tes A / B yang tidak terdistribusi normal, menggunakan independent t-test

13

Saya memiliki serangkaian hasil dari uji A / B (satu grup kontrol, satu grup fitur) yang tidak sesuai dengan Distribusi Normal. Bahkan distribusi lebih menyerupai Distribusi Landau.

Saya percaya uji-t independen mensyaratkan bahwa sampel harus setidaknya terdistribusi secara normal, yang menghambat saya menggunakan uji-t sebagai metode pengujian signifikansi yang valid.

Tetapi pertanyaan saya adalah: Pada titik mana seseorang dapat mengatakan bahwa uji-t bukanlah metode pengujian signifikan yang baik?

Atau dengan kata lain, bagaimana seseorang bisa memenuhi syarat seberapa andal nilai-p dari suatu uji-t, hanya diberikan set data?

teebszet
sumber

Jawaban:

8

Distribusi data Anda tidak harus normal, itu Distribusi Sampling yang harus hampir normal. Jika ukuran sampel Anda cukup besar, maka distribusi sampel rata-rata dari Landau Distribution harus hampir normal, karena Teorema Batas Pusat .

Jadi itu berarti Anda harus bisa menggunakan uji-t dengan data Anda dengan aman.

Contoh

Mari kita perhatikan contoh ini: misalkan kita memiliki populasi dengan distribusi lognormal dengan mu = 0 dan sd = 0,5 (terlihat sedikit mirip dengan Landau)

kepadatan lognormal

Jadi kami mengambil sampel 30 pengamatan 5000 kali dari distribusi ini setiap kali menghitung rata-rata sampel

Dan inilah yang kita dapatkan

distribusi sampling

Terlihat sangat normal, bukan? Jika kami meningkatkan ukuran sampel, itu bahkan lebih jelas

distribusi sampling

Kode r

x = seq(0, 4, 0.05)
y = dlnorm(x, mean=0, sd=0.5)
plot(x, y, type='l', bty='n')


n = 30
m = 1000

set.seed(0)
samp = rep(NA, m)

for (i in 1:m) {
  samp[i] = mean(rlnorm(n, mean=0, sd=0.5))
}

hist(samp, col='orange', probability=T, breaks=25, main='sample size = 30')
x = seq(0.5, 1.5, 0.01)
lines(x, dnorm(x, mean=mean(samp), sd=sd(samp)))


n = 300
samp = rep(NA, m)

for (i in 1:m) {
  samp[i] = mean(rlnorm(n, mean=0, sd=0.5))
}

hist(samp, col='orange', probability=T, breaks=25, main='sample size = 300')
x = seq(1, 1.25, 0.005)
lines(x, dnorm(x, mean=mean(samp), sd=sd(samp)))
Alexey Grigorev
sumber
Hai, Alexei! Tampaknya Anda mahir dalam R, jadi saya ingin tahu, apakah Anda memiliki saran tentang masalah yang saat ini saya hadapi: stackoverflow.com/questions/25101444/… . Di luar itu, saya akan senang terhubung dengan Anda (lihat aleksandrblekh.com untuk profil saya di jejaring sosial profesional), karena sepertinya kami memiliki beberapa minat yang sama (termasuk bahasa ibu :-).
Aleksandr Blekh
Ini adalah penjelasan yang bagus, dan sebenarnya metode yang akhirnya saya gunakan. Saya suka memikirkan metode ini sebagai memisahkan seluruh set sampel menjadi sub-sampel yang lebih kecil dan menggunakan cara (rata-rata dengan CLT) dari masing-masing sub-sampel sebagai distribusi set data. Terima kasih atas jawabannya!
teebszet
1

Pada dasarnya uji-t independen atau uji-2 sampel digunakan untuk memeriksa apakah rata-rata dari kedua sampel berbeda secara signifikan. Atau, dengan kata lain, jika ada perbedaan yang signifikan antara rata-rata dari dua sampel.

Sekarang, rata-rata dari 2 sampel tersebut adalah dua statistik, yang menurut CLT, memiliki distribusi normal, jika disediakan sampel yang cukup. Perhatikan bahwa CLT berfungsi terlepas dari distribusi dari mana statistik rata-rata dibuat.

Biasanya seseorang dapat menggunakan z-test, tetapi jika varians diperkirakan dari sampel (karena tidak diketahui), beberapa ketidakpastian tambahan diperkenalkan, yang dimasukkan dalam distribusi t. Itu sebabnya uji-2-sampel berlaku di sini.

rapaio
sumber