Я намагаюся застосувати точний тест Фішера в симульованій генетичній проблемі, але значення p, схоже, перекошені праворуч. Будучи біологом, я думаю, я просто пропускаю щось очевидне для кожного статистика, тому я дуже вдячний за вашу допомогу.
Моя установка така: (налаштування 1, маргінали не зафіксовані)
Два зразки 0s та 1s випадковим чином генеруються у R. Кожен зразок n = 500, ймовірності вибірки 0 та 1 рівні. Потім я порівнюю пропорції 0/1 у кожному зразку з точним тестом Фішера (просто fisher.test
; також випробував інше програмне забезпечення з подібними результатами). Відбір проб та тестування повторюють 30 000 разів. Отримані p-значення розподіляються так:
Середнє значення всіх p-значень становить приблизно 0,55, 5-й перцентиль - 0,0577. Навіть розподіл здається розривним у правій частині.
Я читав усе, що можу, але не знаходжу жодної ознаки того, що така поведінка є нормальною - з іншого боку, це просто імітовані дані, тому я не бачу джерел для будь-яких упереджень. Чи є якесь коригування, яке я пропустив? Занадто малі розміри зразка? А може бути, воно не повинно бути рівномірно розподілене, а значення p трактуються по-різному?
Або мені просто повторити це мільйон разів, знайти квантил 0,05 і використовувати це як обмеження значущості, коли я застосовую це до фактичних даних?
Дякую!
Оновлення:
Майкл М запропонував фіксувати граничні значення 0 і 1. Тепер p-значення дають набагато приємніше розподіл - на жаль, це не рівномірно, ані будь-якої іншої форми, яку я визнаю:
додавання фактичного коду R: (налаштування 2, маргінали виправлені)
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="")
Остаточне редагування:
Як в коментарях зазначає Уубер, області просто виглядають спотвореними через бінінг. Я додаю QQ-графіки для установки 1 (вільних маргіналів) та установки 2 (фіксованих маргіналів). Подібні сюжети можна побачити в симуляціях Глена внизу, і всі ці результати насправді здаються досить рівномірними. Дякую за допомогу!