La regressione logistica è cambiata dalla versione 16?Ho uno script di grandi dimensioni che si basa sulla piattaforma x/y per ottenere una regressione logistica di una variabile binaria in funzione di una variabile continua.
quindi uso il report per estrarre i parametri di adattamento del termine lineare della regressione. quindi utilizzo la stima per prevedere la probabilità di Sì e No e visualizzare i risultati per l'utente.
a partire da JMP 16.0 improvvisamente lo script riporta come risultato il "complemento al 100%" del giusto numero atteso.
guardando più a fondo mi sono accorto che ora la regressione cambia il segno di entrambi i parametri (es. riporta l'adattamento per la probabilità di sì rispetto alla probabilità di no)
allo stesso modo se esporto la formula di probabilità nella tabella riporta il termine lineare opposto (lin[no] vs lin[yes])
le probabilità sì/no sono calcolate di conseguenza nella tabella ma il mio modello che si basa sui parametri di adattamento non funziona più correttamente.
per aggirare il problema ho aggiunto un'istruzione if basata sulla versione JMP al mio codice ma volevo verificare se la modifica era intenzionale (ad esempio rimarrà tale per le versioni future) o è il risultato di un bug, quindi la mia soluzione alternativa mi darà risultati errati in futuro.
Grazie
ScriptingRe: Regressione logistica modificata dalla versione 16?Consiglio di indirizzare questo a support@jmp.com .
Re: Regressione logistica modificata dalla versione 16?Il comportamento che hai notato è una modifica intenzionale con JMP 16.0. Per le risposte binarie, spesso è necessario selezionare quale livello è il target o il livello positivo. Ciò è particolarmente vero quando si producono report che fanno riferimento a falsi positivi e simili. Con questa modifica, JMP è ora coerente con SAS. Inoltre, abbiamo introdotto un'opzione "Target Level()" per la piattaforma e una proprietà della colonna "Target Level" per assegnare il livello target corretto. Per esempio:
//Begin Script for JMP 16;
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Penicillin.jmp" );
Logistic(
Y( :Response ),
X( :"ln(dose)"n ),
Freq( :Count ),
Target Level( "Cured" )
);
È possibile accedere alla proprietà della colonna evidenziando la colonna di risposta e selezionando "Cols->Informazioni colonna..." Fare clic sul menu a discesa "Proprietà colonna" e selezionare "Livello target".