Mi chiamo Ono e sono un tester senior presso la divisione JMP Japan del SAS Institute Japan.
Potrei sbagliarmi e sbagliarmi, ma di seguito vorrei esprimere la mia opinione personale in questa fase.
■Per quanto riguarda in particolare la prima domanda, poiché i risultati sono ogni volta diversi, penso che potrebbe esserci qualcosa di strano. (Tra l'altro, nel "grafico logistico" con una sola variabile esplicativa continua, vengono utilizzati numeri casuali per determinare la coordinata Y. Tuttavia, almeno in JMP15 e versioni successive, viene utilizzato un valore iniziale casuale fisso, quindi il grafico non dovrebbe apparire diverso ogni volta che viene eseguito. Inoltre, i numeri casuali non vengono utilizzati per altri risultati numerici della regressione logistica e, per ragioni matematiche, almeno le stime puntuali di massima verosimiglianza dovrebbero essere le stesse in qualsiasi software statistico con gli stessi dati e impostazioni, tranne nelle due situazioni descritte di seguito.) Se la risposta seguente non è pertinente, potresti indicarmi quali risultati numerici nel report sono diversi ogni volta? Potresti inoltre confermare se i risultati numerici sono diversi ogni volta che esegui nuovamente l'analisi utilizzando lo script?
■In genere, quando si adatta un modello in JMP, è necessario prestare attenzione ai seguenti punti:
Punto 1 : Se ti chiedi se i risultati di JMP sono diversi da quelli di altri software statistici, tieni presente che JMP utilizza un metodo chiamato codifica degli effetti.
Punto 2 : Si noti che (parte dei) risultati JMP cambierà a seconda della "scala" impostata per la colonna.
Punto 3 : Si noti che (parte dei) risultati JMP potrebbero cambiare a seconda dell'"ordine in cui vengono visualizzati i valori".
Punto 4 : Utilizzando gli script è possibile ripetere la stessa analisi senza utilizzare il mouse.
<Dettagli>
La regressione logistica per risposte binarie, ordinali o nominali ha una sola soluzione globale, tranne in due casi:
(1) Quando c'è indipendenza lineare tra le variabili esplicative
Ad esempio, quando esiste una relazione tra tre variabili X1, X2 e X3, come X1 + X2 = X3, oppure quando la dimensione del campione è inferiore al numero di variabili esplicative. In questo caso, le stime dei parametri non sono determinate in modo univoco.
(2) Quando esiste la separazione
In questo caso, le stime dei parametri saranno +∞ o -∞. Vale a dire che non ci sono stime dei parametri.
Al contrario, in situazioni diverse da queste due, l'analisi di regressione logistica per variabili di risposta binarie, ordinali o nominali ha una soluzione unica. Pertanto, se i dati e le impostazioni del modello sono gli stessi, in situazioni diverse dalle due sopra menzionate, anche se viene utilizzato un software statistico diverso(*1), almeno le stime puntuali (stime puntuali ottenute tramite stima di massima verosimiglianza) dovrebbero essere e saranno le stesse, entro l'intervallo di errore numerico. Inoltre, almeno l'analisi di regressione logistica di JMP non utilizza numeri casuali nel processo di ottimizzazione(*2), quindi anche sotto questo aspetto, se i dati e le impostazioni sono gli stessi e si tratta della stessa versione di JMP, i risultati dovrebbero essere esattamente gli stessi(*3).
(*1) Tuttavia, alcune routine che eseguono la funzione "logistica" in altri software utilizzano di default la verosimiglianza penalizzata con norma L1 o norma L2 invece della normale analisi di regressione logistica. Inoltre, come discusso di seguito al punto (b), le stime dei parametri possono differire a seconda della codifica delle variabili esplicative categoriali. Esistono inoltre tre tipi di test per la stima della massima verosimiglianza: il test di Wald, il test del rapporto di verosimiglianza e il test del punteggio. Gli intervalli di test e di confidenza variano a seconda del test utilizzato.
(*2) Tuttavia, in un "grafico logistico" disegnato quando è presente una sola variabile esplicativa continua, vengono utilizzati numeri casuali per determinare la coordinata Y. Tuttavia, almeno nella versione 15 e successive di JMP, viene utilizzato un valore seed casuale fisso, quindi i risultati non dovrebbero variare da un'esecuzione all'altra. La guida per la versione corrente (18.2) può essere visualizzata al seguente URL:
(*3) Tuttavia, a seconda del tempo necessario per elaborare i dati, il test predefinito eseguito sugli effetti potrebbe essere il test del rapporto di verosimiglianza o il test di Wald. Per la versione corrente (18.2), maggiori dettagli sono disponibili al seguente URL:
Tuttavia, ci sono tre punti (insidie) a cui dovresti fare attenzione (a) a (c).
(a) In JMP, anche se i valori numerici dei dati sono gli stessi, i risultati dei grafici e delle analisi statistiche cambieranno a seconda della scala (continua, ordinale o nominale) impostata nella tabella dati.
(b) In JMP, la codifica delle variabili esplicative (in particolare la codifica della scala nominale) segue un metodo comunemente utilizzato nelle statistiche industriali e di produzione. Questa codifica è chiamata "codifica dell'effetto" e, ad esempio, per le scale nominali, maschio e femmina verrebbero codificati come segue:
Maschio 1
Maschio 1
Femmina -1
Femmina -1
Femmina -1
O,
Maschio -1
Maschio -1
Donna 1
Donna 1
Donna 1
Ad esempio, nel caso di una scala nominale a tre valori, la codifica sarebbe la seguente:
Ehime 1 0
Ehime 1 0
Kagawa 0 1
Tokushima -1 -1
Tokushima -1 -1
Tokushima -1 -1
(Quando questo tipo di codifica degli effetti viene utilizzato per variabili di scala nominale, le stime dei parametri rappresentano deviazioni dall'"impostazione intermedia". Nelle statistiche industriali e di produzione, molte variabili di scala nominale sono originariamente continue e le deviazioni dalle impostazioni nel processo corrente rappresentano spesso un problema, quindi è probabile che questo tipo di codifica venga utilizzato di frequente.)
Per le variabili esplicative ordinali viene utilizzata una codifica diversa.
(c) Quando i dati vengono ordinati, l'ultimo livello diventa "-1" (nella codifica della scala nominale). È anche possibile modificare il livello da visualizzare per ultimo utilizzando la proprietà della colonna Ordine di visualizzazione dei valori. (Nell'esempio sopra, Tokushima è l'ultima categoria ad essere visualizzata.)
La differenza tra (b) e (c) determina stime diverse dei parametri. Tuttavia, anche se le impostazioni in (b) e (c) sono diverse, l'adattamento ai dati complessivi ("Test del modello completo", "Dettagli di adattamento" e "Mancanza di adattamento (LOF)") non cambierà.
In JMP, i processi analitici possono essere salvati in quello che viene chiamato "script" o "JMP Scripting Language (JSL)." È possibile salvare lo script dal menu con il triangolo rosso nella parte superiore del report. Nella versione 18 di JMP, fare clic sul triangolo rosso nel report > Salva script e selezionare Nella tabella dati per salvare in una tabella dati. In questo modo lo script viene salvato nell'angolo in alto a sinistra della tabella dati. Questa funzione consente di ricreare l'analisi senza dover cliccare con il mouse.
(In particolare, JMP18 ha aggiunto una nuova funzionalità denominata "Workflow Builder", che consente di registrare una gamma più ampia di operazioni del mouse.)
■2
Il D di Somers sarà negativo anche nei casi in cui è presente un cosiddetto "coefficiente di correlazione negativo" (proprio come sono negativi i coefficienti di correlazione di Pearson e Kendall). Ad esempio, nei dati sottostanti, D di Somers e τb di Kendall sono negativi.
dt1 = New Table("Test1",
New Column("X", Ordinal, Values([1,1,1,2,2,2,3,3,3])),
New Column("Y", Ordinal, Values([1,2,3,1,2,3,1,2,3])),
New Column("度数", Values([9,8,7, 6,5,2, 4,3,1]))
);
dt1 << Contingency(
Y( :Y ),X( :X ), Freq( :度数 ),
Measures of Association( 1 )
);
Per eseguire questo script, selezionare prima File > Nuovo > Script JSL dal menu a discesa JMP (JMP 18 per Windows). Quindi, nella finestra dello script che appare, copia e incolla lo script sopra. Dopo aver copiato e incollato, seleziona Modifica > Esegui script dal menu a discesa.
Ciò è correlato anche a (c) in ■1 sopra, ma i risultati cambieranno a seconda dell'ordine in cui i dati vengono ordinati. Nello stato predefinito in cui non viene eseguita alcuna operazione, "più piccolo" e "più grande" sono definiti dall'ordine in cui i dati vengono ordinati (A, B, C se sono alfabetici, 1, 2, 3 se sono numerici).
Questo ordine può essere modificato nelle proprietà della colonna "Ordine di visualizzazione dei valori". (Nelle versioni precedenti, questo Ordine di valore era denominato opzione diversa.)
(1) Nella tabella dati, fare clic con il pulsante destro del mouse sull'intestazione della colonna e selezionare Informazioni sulla colonna.
(2) Fare clic sulla casella combinata Proprietà colonna e selezionare Ordine di visualizzazione valore.
(3) Se i valori non sono ordinati dal più piccolo al più grande, selezionare un valore e quindi utilizzare le frecce su e giù (↑ o ↓) per modificare l'ordine.
(4) Dopo aver modificato l'ordine di visualizzazione, fare clic sul pulsante OK nell'angolo in alto a destra dello schermo per chiudere la finestra delle informazioni sulla colonna.
Ad esempio, i seguenti valori dei dati sono esattamente gli stessi di quelli sopra, ma poiché l'ordine dei valori è diverso (per la variabile X, "3" è definito come il più piccolo e "1" come il più grande), D di Somers e τb di Kendall sono positivi, a differenza dei risultati sopra. (Lo script seguente è stato creato utilizzando l'attuale JMP 18. Potrebbe non funzionare come previsto nelle versioni precedenti.)
dt2 = New Table( "Test2",
New Column( "X", "Ordinal",
Set Property( "Value Order", {Custom Order( {3, 2, 1} )} ),
Values( [1, 1, 1, 2, 2, 2, 3, 3, 3] )
),
New Column( "Y","Ordinal",
Set Property( "Value Order", {Custom Order( {1, 2, 3} )} ),
Set Values( [1, 2, 3, 1, 2, 3, 1, 2, 3] )
),
New Column( "度数",
Set Values( [9, 8, 7, 6, 5, 2, 4, 3, 1] )
)
);
dt2 << Contingency(
Y( :Y ),X( :X ), Freq( :度数 ),
Measures of Association( 1 )
);
La D di Somers può essere negativa (il suo valore minimo è -1).
Inoltre, per verificare se l'analisi è errata, guarda la tabella di contingenza nel report e assicurati che i valori siano ordinati dal più piccolo al più grande. Se i valori non sono disposti come previsto, sarà necessario modificare l'ordine di visualizzazione nelle proprietà della colonna della tabella dati "Ordine di visualizzazione dei valori".