Uji statistik apa yang digunakan untuk uji A / B?


12

Kami memiliki dua kohort masing-masing 1000 sampel. Kami mengukur 2 jumlah pada setiap kelompok. Yang pertama adalah variabel biner. Yang kedua adalah bilangan real yang mengikuti distribusi ekor yang berat. Kami ingin menilai kohort mana yang berkinerja terbaik untuk setiap metrik. Ada banyak tes statistik yang dapat dipilih: orang menyarankan uji-z, yang lain menggunakan uji-t, dan yang lain Mann-Whitney U.

  • Tes atau tes mana yang harus kita pilih untuk setiap metrik untuk kasus kita?
  • Apa yang terjadi jika satu tes menunjukkan perbedaan yang signifikan antara kohort dan beberapa tes lain menunjukkan perbedaan yang tidak signifikan?

Jawaban:


12

Karena kedua metrik Anda adalah 1) biner dan 2) berekor berat, Anda harus menghindari uji-t yang mengasumsikan distribusi normal.

Saya pikir Mann-Whitney U adalah pilihan terbaik Anda dan harus cukup efisien bahkan jika distribusi Anda mendekati normal.

Mengenai pertanyaan kedua Anda:

Apa yang terjadi jika satu tes menunjukkan perbedaan yang signifikan antara kohort dan beberapa tes lain menunjukkan perbedaan yang tidak signifikan?

Ini tidak jarang jika perbedaan statistik adalah garis batas dan data memiliki distribusi sampel "berantakan". Situasi ini mengharuskan analis untuk mempertimbangkan dengan hati - hati semua asumsi dan batasan dari setiap uji statistik, dan memberikan bobot terbesar pada uji statistik yang memiliki jumlah pelanggaran asumsi terendah.

Ambil asumsi distribusi Normal. Ada berbagai tes untuk normalitas, tetapi itu bukan akhir dari cerita. Beberapa tes bekerja dengan baik pada distribusi simetris bahkan jika ada beberapa penyimpangan dari normalitas, tetapi tidak bekerja dengan baik pada distribusi miring.

Sebagai aturan umum, saya sarankan Anda tidak menjalankan tes apa pun di mana salah satu asumsinya jelas-jelas dilanggar.

EDIT: Untuk variabel kedua, mungkin layak untuk mengubah variabel menjadi variabel yang terdistribusi normal (atau paling tidak dekat) selama transformasi tersebut mempertahankan pesanan. Anda harus memiliki keyakinan yang baik bahwa transformasi menghasilkan distribusi normal untuk kedua kohort. Jika Anda memasukkan variabel kedua ke distribusi log-normal, maka fungsi log mengubahnya menjadi distribusi normal. Tetapi jika distribusinya adalah Pareto (hukum kekuasaan), maka tidak ada transformasi ke distribusi normal.

EDIT: Seperti yang disarankan dalam komentar ini , Anda harus mempertimbangkan Bayesian Estimation sebagai alternatif untuk uji-t dan Pengujian Nign Hypothesis Significance (NHST) lainnya.


Terimakasih atas infonya. Saya tidak cukup jelas, saya memiliki dua kuantitas satu di antaranya adalah biner dan yang lain adalah bilangan real setelah distribusi ekor yang berat. Saya mengedit pertanyaan untuk mengklarifikasi ini.
iliasfl

Ya, saya pikir saya mengerti. Anda ingin menjalankan tes dua kali, sekali pada variabel biner dan sekali pada variabel nyata (distribusi berekor berat). Saya merekomendasikan menjalankan Mann-Whitney U untuk keduanya.

Mengapa Mann-Whitney cocok untuk data biner?
Glen_b -Reinstate Monica

Mann-Whitney U efektif untuk distribusi non-normal, termasuk distribusi diskrit dengan dua nilai (yaitu biner). Jika semua data adalah biner, maka mungkin tes lain akan bekerja lebih baik.
MrMeritology

Adakah yang bisa mengkonfirmasi apakah ini benar? ...

7

Untuk data bernilai nyata, Anda mungkin juga ingin mempertimbangkan membuat statistik pengujian Anda sendiri berdasarkan bootstrap data Anda. Pendekatan ini cenderung menghasilkan hasil yang akurat ketika Anda berurusan dengan distribusi populasi yang tidak normal, atau mencoba mengembangkan interval kepercayaan di sekitar parameter yang tidak memiliki solusi analitik yang nyaman. (Yang pertama benar dalam kasus Anda. Saya hanya menyebutkan yang terakhir untuk konteks.)

Untuk data nyata Anda, Anda akan melakukan hal berikut:

  1. Pool dua kohort Anda.
  2. Dari kolam, cicipi dua kelompok yang terdiri dari 1000 elemen, dengan penggantian.
  3. Hitung selisih rata-rata sampel antara kedua kelompok.
  4. Ulangi langkah 2 dan 3 beberapa ribu kali untuk mengembangkan distribusi perbedaan-perbedaan ini.

Setelah Anda mendapatkan distribusi itu, hitung selisih rata-rata untuk sampel Anda yang sebenarnya, dan hitung nilai-p.


Terima kasih, jadi Anda berakhir dengan distribusi, yang seharusnya normal dengan beberapa mean dan standar deviasi. Bagaimana Anda menghitung nilai p dari itu, dan mungkin interval kepercayaan, untuk menentukan pemenang (jika ada)?
iliasfl

Distribusi tidak harus normal. Itu akan memiliki kira-kira distribusi apa pun yang diambil dari sampel. Itulah keindahan menggunakan bootstrap. Bagaimanapun, Anda mendapatkan nilai-p dengan menghitung statistik pengujian Anda dari hasil aktual Anda. Yakni perbedaan cara masing-masing kelompok. Kemudian bandingkan angka itu dengan distribusinya. Persentil yang Anda dapatkan adalah nilai-p Anda untuk uji satu sisi untuk selisih rata-rata.
Nathan Gould

4
Apa yang Nathan gambarkan juga merupakan dasar untuk metode pengujian signifikansi Bayesian. Saya telah menggunakan (dan saat ini menggunakan) Estimasi Bayes menggantikan pendekatan T-Test (BEST). Anda harus melihat kerangka kerja itu jika Anda bermaksud menerapkan pendekatan penyatuan.
cwharland

0

Saya kedua @ jawaban MrMeritology. Sebenarnya saya bertanya-tanya apakah tes MWU akan kurang kuat daripada tes proporsi independen, karena buku teks yang saya pelajari dan digunakan untuk mengajar mengatakan bahwa MWU dapat diterapkan hanya untuk data ordinal (atau interval / rasio).

Tetapi hasil simulasi saya, diplot di bawah ini, menunjukkan bahwa tes MWU sebenarnya sedikit lebih kuat daripada tes proporsi, sementara mengendalikan tipe I kesalahan dengan baik (pada proporsi populasi kelompok 1 = 0,50).

masukkan deskripsi gambar di sini

Proporsi populasi kelompok 2 dijaga pada 0,50. Jumlah iterasi adalah 10.000 di setiap titik. Saya mengulangi simulasi tanpa koreksi Yate tetapi hasilnya sama.

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"))

gambar hasil Anda semuanya hitam
Ooker
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.