Як інтерпретувати QQ-графік p-значень


17

Я займаюсь дослідженнями асоціацій GWAS SNP щодо захворювань, використовуючи програмне забезпечення під назвою plink ( http://pngu.mgh.harvard.edu/~purcell/plink/download.shtml ).

За результатами асоціації я отримую p-значення для всіх SNP, які були проаналізовані. Тепер я використовую QQ-графік цих p-значень, щоб показати, чи дуже низьке p-значення відрізняється від очікуваного розподілу p-значень (рівномірний розподіл). Якщо р-значення відхиляється від очікуваного розподілу, "може" називати це p значення статистичним значенням.

Як видно з QQ-сюжету, у верхньому кінці хвоста останні 4 пункти дещо важко інтерпретувати. Два останніх пункту сірого кольору свідчать про те, що ці р-значення знаходяться у очікуваному розподілі p-значень, тоді як інші два - ні.

Тепер, як інтерпретувати це, останні два бали мають нижчі значення p, але не є "значущими" згідно QQ-графіку, тоді як інші два пункти з більш високими p-значеннями "значущі"? Як це може бути правдою?

введіть тут опис зображення


6
Одна з проблем використання графіків QQ для інтерпретації GWAS полягає в тому, що значення p не залежать одне від одного, і насправді найбільш екстремальні значення p дуже корелюються. Я б здогадався, що ваші чотири найкращі хіти, ймовірно, на одній хромосомі і досить близькі один до одного, що ЛД викликає кореляцію між ними. Якби ви запустили тест, який дав друге найнижнє p-значення, обумовлене SNP, з найнижчим p-значенням, я здогадуюсь, що його p-значення впаде в необмежений діапазон. Те саме, мабуть, трапиться і з багатьма іншими очевидними хітами.
Сем Діксон

3
Я вже зробив це, я підрізав набір даних SNP, щоб отримати лише незалежні SNP (використовуючи r-квадрат 0,8 як відсічення). Цей QQ-графік показує результати незалежних SNP або SNP в LD <0,8.
eXpander

1
Найнижчі SNP відповідають хромосомі 6, другій - хромосомі 2, третій - хромосомі 5, четвертій - хромосомі 9, тому я не дуже впевнений, що LD тут є проблемою.
eXpander

1
Чи можу я запитати вас, як ви зробили цей сюжет? Я можу отримати щось подібне, але з значеннями chi-квадрата або з p-значеннями, але без сірої тіні, і мені потрібно одне з p-значеннями та сірою тінню. Якби ви могли поділитися кодом, яким ви користувалися, було б чудово. Спасибі.
Алекс Арнау

Тут folk.uio.no/tores/Publications_files/… є класичним документом щодо цієї проблеми.
kjetil b halvorsen

Відповіді:


5

Хорошим посиланням на аналіз графіків p-значення є [1].

Результат, який ви бачите, може бути зумовлений тим, що сигнал / ефекти існують лише в деяких підмножинах тестів. Вони рухаються вище смуг приймання. Відхилення лише р-значення поза діапазонів дійсно може бути виправданим, але, можливо, важливіше, ви повинні вирішити, який критерій помилки ви хочете контролювати під час вибору процедури вибору (FWER, FDR). Ви можете проконсультуватися [2] щодо цього вибору та посилання на них для вибору відповідної процедури множинного тестування.

[1] Шведер, Т. та Е. Шпітволл. "Сюжети Р-значень для одночасного оцінювання багатьох тестів". Biometrika 69, вип. 3 (грудень 1982 р.): 493–502. doi: 10.2307 / 2335984.

[2] Розенблат, Джонатан. "Посібник практикуючих для кількох тестових показників помилок". ArXiv e-print. Університет Тель-Авів, 17 квітня 2013 року. Http://arxiv.org/abs/1304.4920 .


1

Це давнє запитання, але мені здалося корисним при спробі інтерпретації QQPlots вперше. Я думав, що додам до цих відповідей, якщо більше людей натраплять на це в майбутньому.

Те, що мені було трохи складніше зрозуміти - це які саме пункти? Я виявив, що перехід до коду дозволив легко зрозуміти.

Ось який-небудь код R, який я адаптував GWASTools::qqPlot, реалізуючи QQPlot у 3 рядках:

simpleQQPlot = function (observedPValues) {
  plot(-log10(1:length(observedPValues)/length(observedPValues)), 
       -log10(sort(observedPValues)))
  abline(0, 1, col = "red")
}

Ось приклад. У вас є 5 p-значень. simpleQQPlot генерує 5 відповідних значень від рівномірного розподілу між 0 і 1. Це будуть: .2 .4 .6 .8 та 1. Отже, SimpleQQPlot очікує, що ваше найнижче значення p буде приблизно 0,2, а ваше найвище - навколо 1. simpleQQPlot буде сортувати ваші значення і з’єднувати кожне з відповідним згенерованим значенням. Отже .2 буде поєднаний з вашим найнижчим рівнем, 1 з вашим найвищим і так далі. Потім ці парні значення будуються на графіку (після взяття негативних журналів), при цьому X є сформованим значенням, а Y - парним спостережуваним значенням. Якщо ваші спостережувані значення також були виведені із звичайного розподілу, то точки повинні приблизно лежати на прямій. Через сортування бали завжди монотонно збільшуватимуться. Таким чином, кожна наступна точка буде мати більший X і більший або рівний Y.

Так, у вихідному прикладі вище 9,997-го відсортованого p-значення становило близько 5,2, але, як очікується, буде приблизно 4,1, якщо після нормального розподілу. (Примітка. Насправді я не впевнений, скільки р-значень було нанесено вище - я просто здогадався 10 к).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.