Come interpretare un diagramma QQ di valori p


17

Sto facendo studi sull'associazione SNP GWAS sulle malattie usando un software chiamato plink ( http://pngu.mgh.harvard.edu/~purcell/plink/download.shtml ).

Con i risultati dell'associazione ottengo valori p per tutti gli SNP che sono stati analizzati. Ora, uso un diagramma QQ di quei valori p per mostrare se un valore p molto basso differisce dalla distribuzione attesa dei valori p (una distribuzione uniforme). Se un valore p si discosta dalla distribuzione attesa, si può "chiamare" quel valore p per una statistica significativa.

Come puoi vedere nel diagramma QQ, nella parte superiore della coda, gli ultimi 4 punti sono piuttosto difficili da interpretare. Due degli ultimi punti in grigio indicano che quei valori p sono nella distribuzione prevista dei valori p, mentre gli altri due no.

Ora, come interpretarlo, gli ultimi due punti hanno valori p più bassi ma non sono "significativi" secondo il diagramma QQ, mentre gli altri due punti con valori p più alti sono "significativi"? Come può essere vero?

inserisci qui la descrizione dell'immagine


6
Un problema con l'uso dei grafici QQ per interpretare GWAS è che i valori p non sono indipendenti l'uno dall'altro e, di fatto, i valori p più estremi sono molto probabilmente correlati. Immagino che i tuoi primi quattro colpi siano probabilmente sullo stesso cromosoma e siano abbastanza vicini l'uno all'altro che LD sta causando una correlazione tra di loro. Se dovessi eseguire il test che dava il secondo valore p più basso al SNP con il valore p più basso, immagino che il suo valore p scendesse nell'intervallo non eccezionale. Lo stesso accadrebbe probabilmente con molti degli altri successi apparenti.
Sam Dickson,

3
L'ho già fatto, ho eliminato il set di dati SNP per ottenere solo SNP indipendenti (usando un r-quadrato di 0,8 come cutoff). Questo diagramma QQ mostra i risultati di SNP indipendenti o SNP in LD <0,8.
eXpander

1
Il SNP più basso corrisponde al cromosoma 6, il secondo al cromosoma 2, il terzo al cromosoma 5, il quarto al cromosoma 9, quindi non sono così sicuro che LD sia un problema qui.
eXpander

1
Potrei chiederti come hai fatto quella trama? Posso ottenere qualcosa di simile ma con valori chi-quadrati o con valori p ma senza l'ombra grigia e ne ho bisogno con uno con i valori p e l'ombra grigia. Se potessi condividere il codice che hai usato sarebbe fantastico. Grazie.
Aleix Arnau,

Risposte:


5

Un buon riferimento all'analisi dei grafici del valore p è [1].

Il risultato che stai vedendo potrebbe essere guidato dal fatto che il segnale / gli effetti esistono solo in alcuni sottogruppi di test. Questi sono guidati sopra le bande di accettazione. Rifiutare solo il valore p al di fuori delle bande può effettivamente essere giustificato, ma forse ancora più importante, è necessario decidere quale sia il criterio di errore che si desidera controllare quando si seleziona la procedura di selezione (FWER, FDR). Puoi consultare [2] per quella scelta e riferimenti in essa per scegliere la procedura di test multiplo appropriata.

[1] Schweder, T. ed E. Spjotvoll. "Diagrammi di valori P per la valutazione simultanea di numerosi test." Biometrika 69, n. 3 (dicembre 1982): 493–502. DOI: 10,2307 / 2.335.984.

[2] Rosenblatt, Jonathan. "Una guida per professionisti alla verifica di più tassi di errore". ArXiv e-print. Università di Tel Aviv, 17 aprile 2013. http://arxiv.org/abs/1304.4920 .


1

Questa è una domanda più vecchia, ma l'ho trovata utile quando ho provato a interpretare QQPlots per la prima volta. Ho pensato di aggiungere a queste risposte nel caso in cui più persone si imbatteranno in questo in futuro.

La cosa che ho trovato un po 'difficile da capire è quali sono esattamente questi punti? Ho scoperto che andare al codice mi ha reso facile capire.

Ecco un po 'di codice R che ho adattato da GWASTools::qqPlotche implementa un QQPlot in 3 righe:

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

Ecco un esempio Hai 5 valori p. simpleQQPlot genererà 5 valori corrispondenti da una distribuzione uniforme tra 0 e 1. Questi saranno: .2 .4 .6 .8 e 1. Quindi simpleQQPlot si aspetta che il tuo valore p più basso sia intorno a .2 e il più alto sia intorno 1. simpleQQPlot ordina i tuoi valori e li accoppia al valore generato corrispondente. Quindi .2 sarà accoppiato con il tuo valore più basso, 1 con il tuo più alto e così via. Quindi, questi valori associati vengono tracciati (dopo aver preso i registri negativi), con X come valore generato e Y come valore osservato associato. Se anche i valori osservati sono stati estratti da una distribuzione normale, i punti dovrebbero trovarsi approssimativamente sulla retta. A causa dell'ordinamento, i punti aumenteranno sempre monotonicamente. Quindi ogni punto successivo avrà una X maggiore e una Y maggiore o uguale.

Quindi, nell'esempio originale sopra, il 9.997esimo valore p ordinato era di circa 5,2 ma era previsto intorno a 4,1 se seguisse una distribuzione normale. (Nota: in realtà non sono sicuro di quanti valori p siano stati tracciati sopra - ho appena indovinato 10k).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.