Saya mencoba menerapkan uji eksak Fisher dalam masalah genetika yang disimulasikan, tetapi nilai-p tampaknya condong ke kanan. Menjadi seorang ahli biologi, saya kira saya hanya kehilangan sesuatu yang jelas bagi setiap ahli statistik, jadi saya akan sangat menghargai bantuan Anda.
Setup saya adalah ini: (setup 1, marjinal tidak tetap)
Dua sampel 0s dan 1s dihasilkan secara acak dalam R. Setiap sampel n = 500, probabilitas pengambilan sampel 0 dan 1 sama. Saya kemudian membandingkan proporsi 0/1 dalam setiap sampel dengan uji eksak Fisher (hanya fisher.test
; juga mencoba perangkat lunak lain dengan hasil yang sama). Pengambilan sampel dan pengujian diulang 30.000 kali. Nilai-p yang dihasilkan didistribusikan seperti ini:
Nilai tengah dari semua nilai-p adalah sekitar 0,55, persentil ke-5 pada 0,0577. Bahkan distribusinya tampak terputus-putus di sisi kanan.
Saya sudah membaca semua yang saya bisa, tetapi saya tidak menemukan indikasi bahwa perilaku ini normal - di sisi lain, itu hanya data simulasi, jadi saya tidak melihat sumber untuk bias. Apakah ada penyesuaian yang saya lewatkan? Ukuran sampel terlalu kecil? Atau mungkin itu tidak seharusnya didistribusikan secara seragam, dan nilai-p ditafsirkan secara berbeda?
Atau haruskah saya mengulangi ini satu juta kali, menemukan kuantil 0,05, dan menggunakannya sebagai batas signifikan ketika saya menerapkan ini pada data aktual?
Terima kasih!
Memperbarui:
Michael M menyarankan untuk memperbaiki nilai marginal dari 0 dan 1. Sekarang nilai-p memberikan distribusi yang jauh lebih baik - sayangnya, itu tidak seragam, atau bentuk lain yang saya kenal:
menambahkan kode R aktual: (pengaturan 2, marjinal tetap)
samples=c(rep(1,500),rep(2,500))
alleles=c(rep(0,500),rep(1,500))
p=NULL
for(i in 1:30000){
alleles=sample(alleles)
p[i]=fisher.test(samples,alleles)$p.value
}
hist(p,breaks=50,col="grey",xlab="p-values",main="")
Suntingan terakhir:
Seperti ditunjukkan whuber dalam komentar, area hanya terlihat terdistorsi karena binning. Saya melampirkan plot-QQ untuk pengaturan 1 (marjin bebas) dan pengaturan 2 (marjin tetap). Plot serupa terlihat dalam simulasi Glen di bawah ini, dan semua hasil ini pada kenyataannya tampak agak seragam. Terima kasih untuk bantuannya!
sumber
Jawaban:
Masalahnya adalah data itu diskrit sehingga histogram bisa menipu. Saya membuat kode simulasi dengan qqplots yang menunjukkan perkiraan distribusi seragam.
sumber