Soluzione in caso di violazione del presupposto di linearità nel modello di regressione logistica? (possibilmente in R)

Jan 08 2021

Ho un problema con la mia regressione logistica che ho impostato e spero che qualcuno possa aiutarmi. (Sto lavorando con R)

I miei dati si basano su valori orari. La variabile dipendente è una variabile dicotomica (1 o 0). Il modello include 30 variabili metriche indipendenti (9 di loro hanno osservazioni sia positive che negative).

Ora il mio problema: un presupposto della regressione logistica è che esiste una relazione lineare tra il logit del risultato e ciascuna variabile metrica indipendente. Questa ipotesi è violata in tutti i miei modelli. (Tutti gli altri presupposti di regressione logistica non vengono violati).

Per verificarlo, ho applicato più volte il test Box-Tidwell. Una volta con tutte le variabili in una regressione logistica, dove ho regredito la variabile dipendente originale sulle variabili indipendenti e il prodotto delle variabili indipendenti con la rispettiva trasformazione logaritmica delle variabili indipendenti.

(y ~ x1 + (x1*ln(x1)) + x2 + (x2*ln(x2)) + ... , familiy = binomial("logit"))

Inoltre ho testato boxTidwell(model$linear.predictors ~ independent variable)separatamente l'ipotesi di linearità con la funzione R per ciascuna variabile. Per quasi tutte le variabili, il test ha mostrato significatività e quindi una violazione dell'ipotesi del modello. Anche diverse trasformazioni delle variabili indipendenti non hanno aiutato. Inoltre, i miei modelli hanno fallito il test Hosmer-Lemeshow.

So che posso aggirare l'ipotesi se trasformo le variabili metriche indipendenti in variabili categoriali. Tuttavia, vorrei evitare questo. Ho anche letto che posso contrastare il problema con la metodologia delle spline. Sfortunatamente non sono riuscito a trovare alcuna letteratura che spieghi questo. Soprattutto non per una stima del modello logistico.

Ora vorrei sapere se qualcuno può gentilmente aiutarmi qui.

Una violazione del presupposto significa che non sono autorizzato a utilizzare questo modello e quindi i risultati potrebbero essere errati? (Non voglio utilizzare il modello come modello predittivo o di previsione, ma solo per spiegare / descrivere entro il periodo di tempo dei dati.)

Come applico la metodologia delle spline per risolvere il mio problema? Come interpreto i risultati? (Mi aiuterebbe immensamente se queste spiegazioni fossero supportate dai codici R.)

Risposte

1 kjetilbhalvorsen Jan 10 2021 at 12:09

Diversi punti:

  • Il test di Hosmer-Lemeshow è considerato obsoleto: Hosmer-Lemeshow vs AIC per la regressione logistica

  • Invece di testare l'ipotesi di linearità, utilizzare direttamente le spline di regressione in modo da non aver bisogno di tale ipotesi. Ci sono molti esempi su questo sito (si noti che l'uso delle spline nella regressione logistica funziona come in altri modelli di regressione) Come funzionano le spline quando vengono utilizzate sul lato destro di un'equazione? , Come faccio a trovare un valore p di regressione spline / loess regolare?

  • Un'alternativa sono i gam (modelli additivi generalizzati) che possono scegliere il grado di levigatura (numero di nodi spline, ad esempio) come parte del fitting. Vedere Trasformazione delle variabili per la regressione multipla in R , Perché le mie spline non diventano più flessibili dopo aver modificato i parametri in R mgcv?