Questo componente aggiuntivo consente di eseguire il modello misto lineare generalizzato in JMP. Le impostazioni dei parametri predefiniti sono per lo più le stesse della macro SAS %GLIMMIX.
Il Pannello Seleziona colonne mostra tutte le variabili nel set di dati corrente.
Il Pannello Scegli variabili di ruolo permette di specificare:
- Y: la variabile di risposta.
- Peso: una variabile di ponderazione per l'analisi.
- Offset: la variabile offset. L'impostazione predefinita è nessun offset.
- By: la variabile by consente di adattare i modelli per sottogruppi contemporaneamente.
Il Costruisci gli effetti del modello pannello comprende:
- Effetti fissi
- Effetti casuali
Il Pannello delle opzioni include:
- Distribuzione : la distribuzione delle variabili di risposta. L'impostazione predefinita è Binomiale.
- Collegamento : la funzione di collegamento da utilizzare per trasformare la variabile di risposta in pseudo punteggi prima di utilizzare il modello misto. Vengono fornite le funzioni di collegamento canonico.
- Iterazione massima : il numero massimo di iterazioni per far convergere l'algoritmo. Il valore predefinito è 30.
- Criterio di convergenza : se l'RMSE è inferiore al valore del criterio di convergenza, l'iterazione si interrompe. Il valore predefinito è 1E-8.
- Fattore di correzione : una costante aggiunta alla variabile di risposta nella fase di trasformazione iniziale per evitare singolarità. Il valore predefinito è 0,5.
- Per limite di report di gruppo Nota: quando si specifica una variabile Per, se il numero di sottogruppi è maggiore di questo numero limite, l'output del report verrà soppresso. Verranno invece fornite una tabella di riepilogo e un'interfaccia di Graph Builder.
Illustreremo i dettagli del componente aggiuntivo utilizzando esempi disponibili online (sito web dei risultati macro %GLIMMIX: https://support.sas.com/techsup/notes/v8/25/030.html o il sito PROC GLIMMIX: https://go.documentation.sas.com/?docsetId=statug&docsetVersion=15.1&docsetTarget=statug_glimmix_examples.htm&locale=en ). Per derivare risultati comparativi utilizzando la macro SAS, impostare l'opzione 'DDFM=KR' nell'istruzione MODEL, impostare anche l'opzione 'NOBOUND' nell'istruzione PROC MIXED.
I video dimostrativi sono disponibili anche online:
Esempio 6 -- Formato lungo dei dati di Salamander: https://youtu.be/6gCqufudFV4
Esempio 7 -- Dati RNA-seq: https://youtu.be/o4LeTmVzzVE
Esempio 1 – Distribuzione di Poisson (ship_demo.jmp):
Quello che segue è un assaggio dei dati della nave (originariamente da McCullagh e Nelder (1989), Sezione 6.3.).
La variabile di risposta è "N", che segue la distribuzione di Poisson. L'effetto fisso nel Modello Misto Lineare Generalizzato è “tipo”; e gli effetti casuali sono "anno, periodo, anno*periodo". La variabile offset è "servizio".
La funzione di collegamento predefinita per la distribuzione di Poisson è il collegamento 'log'. Nota che, se vogliamo usare i collegamenti canonici (predefiniti) per una distribuzione selezionata, possiamo semplicemente lasciare vuota la casella dei collegamenti.
I termini di interazione possono essere aggiunti selezionando due o più variabili e facendo clic sul pulsante "croce" nel pannello Effetti fissi o Effetti casuali.
Fare clic sul pulsante "Esegui" dopo aver specificato tutti i parametri del modello. Dopo 28 iterazioni, l'algoritmo converge. L'output del risultato è del formato Modello misto in JMP. Si noti che quando si confrontano i risultati della macro %GLIMMIX SAS, a causa della differenza nella codifica della matrice di progettazione, si consiglia di confrontare i risultati del test F, le medie LS o le stime dei componenti della varianza invece delle stime dei parametri degli effetti fissi.
Esempio 2 – Distribuzione binaria (sal1.jmp):
Quello che segue è un assaggio dei dati di Salamander (originari da McCullagh e Nelder (1989), Sezione 14.5). Si noti che prima di eseguire l'analisi, definire il tipo di modellazione corretto per le variabili di interesse. Nell'esempio seguente, le variabili "fnum, mnum" sono numeri continui. Ma se vogliamo usarli come variabili categoriali, possiamo fare clic con il pulsante destro del mouse sul nome della variabile> informazioni sulla colonna, quindi modificare il tipo di modellazione in nominale.
Specifiche del modello: Variabile di risposta: ybin. Distribuzione: Binomiale. Funzione di collegamento: logit.
Effetto fisso: fpop, mpop, fpop*mpop. Effetto casuale: fpop*fnum, mpop*mnum.
L'algoritmo converge dopo 10 iterazioni.
Esempio 3 – Distribuzione binomiale (blotch.jmp)
Fonte di dati: https://go.documentation.sas.com/?docsetId=statug&docsetTarget=statug_code_gmxex04.htm&docsetVersion=15.1&locale=en
La variabile di risposta “prop” indica il incidenza . “sito” e “varietà” sono i due effetti fissi. Selezioniamo la distribuzione “Binomiale” e la funzione di collegamento predefinita è “Logit”. (In questo esempio non specifichiamo alcun effetto casuale.)
I mezzi LS di "varietà" e "sito" sono coerenti con quelli della macro %GLIMMIX e PROC GLIMMIX. Tuttavia, i risultati del test F hanno mostrato discrepanze.
Esempio 4 – Distribuzione binomiale (rcb_binomial.jmp)
Dopo 6 iterazioni, ricaviamo il seguente risultato. Questo risultato è coerente con il risultato generato dalla macro %GLIMMIX, ma leggermente diverso dal risultato di PROC GLIMMIX.
Esempio 5 – Distribuzione binomiale (hessianfly.jmp)
Fonte di dati: https://go.documentation.sas.com/?docsetId=statug&docsetTarget=statug_code_gmxex01.htm&docsetVersion=15.1&locale=en
La risposta è "s/n", che è della forma " eventi/prove " o " successi/prove totali ”. Quando si specificano le variabili di risposta Y, è necessario selezionare prima la variabile "eventi", in questo caso "y", quindi selezionare la variabile "prove". Quindi, "n" viene selezionato dopo "y". Imposta “entrata” come effetto fisso e “blocco” come effetto casuale. Scegli la distribuzione "Binomiale" e usa la funzione di collegamento "Logit" predefinita.
Dopo 6 iterazioni, ricaviamo i risultati come segue:
I risultati degli esempi precedenti possono essere verificati dal SAS PROC GLIMMIX e dalla macro %GLIMMIX, vedere il codice SAS: SAS_Example_macro_proc_verification.sas .
Esempio 6 – Distribuzione binaria (sal1_long.jmp):
Quando i dati sono costituiti da sottoinsiemi e si desidera modellare ciascun gruppo/sottoinsieme in modo indipendente, è possibile specificare la variabile dell'indicatore del gruppo/sottoinsieme nel campo "Per".
In questo esempio, sal1_long.jmp è la versione impilata dei dati di Salamander (originariamente da McCullagh e Nelder (1989), Sezione 14.5). Qui, le variabili di risposta "y1, y2, y3" sono impilate nella variabile "ystack". La variabile "ycat" indica la categoria di risposta originale.
Qui, specifica "ystack" come variabile di risposta e "ycat" come variabile By. Simile alle impostazioni nell'esempio 2, possiamo specificare la distribuzione, l'effetto fisso, l'effetto casuale.
La procedura GLMM verrà eseguita per ciascun gruppo/sottoinsieme specificato nel campo Per. La relazione finale è la seguente. I risultati sono elencati per ogni gruppo/sottoinsieme: risposta y1_pseudo, risposta y2_pseudo e risposta y3_pseudo.
Esempio 7 – Dati RNA-seq
Poiché i dati genomici di solito sono di dimensioni elevate, dove il numero di geni/SNP è solitamente maggiore di 10k, l'esecuzione dell'analisi integrata potrebbe essere computazionalmente impegnativa. Per l'interesse futuro dell'utilizzo di questo componente aggiuntivo per analizzare i dati RNA-seq, testiamo le prestazioni quando aumentiamo il numero di geni specificati nel campo BY. Questa sezione servirà come parte dello stress test, poiché la funzione BY non è scritta in multi-threading.
I dati di esempio utilizzati qui sono pubblici online, dal pacchetto: https://bioconductor.org/packages/release/bioc/vignettes/variancePartition/inst/doc/dream.html
- varPartDEdata_count.jmp è la matrice di conteggio originale
- varPartDEdata_metadata.jmp sono i metadati per i 24 campioni
- varPartDEdata_stack10.jmp sono i dati elaborati, in cui sono impilate l'espressione genica dei primi 10 geni, insieme ad altre variabili di metadati.
- varPartDEdata_stack100.jmp sono i dati elaborati, in cui sono impilate l'espressione genica dei primi 100 geni, insieme ad altre variabili di metadati.
Dall'esempio in linea, per ogni gene, possiamo adattare il modello come:
Y ~ MalattiaSottotipo + Sesso + (1|Individuale)
, dove "DiseaseSubtype" e "Sex" sono effetti fissi e "Individual" è l'effetto casuale. Qui la variabile di risposta Y
dipenderà dalla scelta della distribuzione. Una scelta della distribuzione è la distribuzione "Poisson", e in questo caso usiamo l'"espressione" del conteggio grezzo come variabile di risposta. Un modo alternativo per modellare i dati RNA-seq consiste nel prendere prima la trasformazione logaritmica dei conteggi e utilizzare "logexprs" come variabile di risposta mentre si specifica la distribuzione "Normale".
Usando i dati di esempio varPartDEdata_stack10.jmp , possiamo derivare i risultati per ciascuno dei dieci geni separatamente:
Utilizzando "logexprs" come variabile di risposta, i risultati di Analizza>Adatta modello>Modello misto e del nostro componente aggiuntivo GLMM sono gli stessi. Quando si utilizza l'espressione "espressione" dei conteggi non elaborati come risposta e si specifica la distribuzione "Poisson", il tempo di esecuzione è più lungo e potrebbero esserci modelli con problemi di convergenza.
Numero di sottogruppi (geni) nella variabile BY
|
Tempo di esecuzione Poisson (HH:MM:SS)
|
Tempo di esecuzione normale (HH:MM:SS)
|
Modello misto che utilizza il tempo di esecuzione del registro (conteggio) (HH: MM: SS)
|
10
|
00:01:15
|
00:00:06
|
|
100
|
00:06:00
|
00:00:43
|
00:00:01
|
1000
|
01:25:19
|
00:09:05
|
00:01:41
|
10000
|
11:11:05
|
01:31:58
|
|
……
|
|
|
|
Quando il numero di geni/sottogruppi specificato nel campo BY è maggiore di Limite rapporto per gruppo=10 , ad esempio usando varPartDEdata_stack100.jmp , non mostreremo più il rapporto. Verrà invece fornita una tabella JMP "Risultato GLMM" insieme a un grafico del vulcano. La tabella "Risultato GLMM" include parte dei risultati del test F (DFDen_, F Ratio_, Prob > F_), la media dei minimi quadrati (LSMeans:), nonché parte delle stime dei parametri (Stima:, -log10(Prob >|t|):).
Specificando "logexprs" come Y e specificando la distribuzione "Normale", possiamo derivare il set di dati di seguito. (Disponibile come Risultato GLMM.jmp )
Il grafico del vulcano predefinito viene generato per il primo effetto fisso specificato. Puoi cambiare colonna per guardare il grafico del vulcano per altre variabili di interesse.
(100 geni, logexpr)
(10000 geni, logexpr)
(10000 geni, espressione, Poisson)