Non fai una trasformazione logit per rendere la variabile che va da meno infinito a più infinito? Non sono sicuro che i dati con 0 e 1 debbano essere un problema. Questo mostra qualche messaggio di errore? A proposito, se hai solo proporzioni la tua analisi verrà sempre fuori sbagliata. È necessario utilizzare weight=argument
per glm
il numero di casi.
Se non funziona nulla, puoi usare una divisione mediana o una divisione quartile o qualsiasi punto di taglio che ritieni appropriato per suddividere il DV in diverse categorie e quindi eseguire una regressione logistica ordinale. Potrebbe funzionare. Prova queste cose.
Non penso personalmente che aggiungere 0,001 agli zeri e prendere 0,001 da quelli sia una pessima idea, ma ha alcuni problemi che verranno discussi più avanti. Basti pensare, perché non aggiungere e sottrarre 0,000000001 (o anche più dei decimali)? Ciò rappresenterà meglio 0 e 1 !! Potrebbe sembrarti che non faccia molta differenza. Ma in realtà lo fa.
Vediamo quanto segue:
> #odds when 0 is replaced by 0.00000001
> 0.00000001/(1-0.00000001)
[1] 1e-08
> log(0.00000001/(1-0.00000001))
[1] -18.42068
> #odds when 1 is replaced by (1-0.00000001):
> (1-0.00000001)/(1-(1-0.00000001))
[1] 1e+08
> log((1-0.00000001)/(1-(1-0.00000001)))
[1] 18.42068
> #odds when 0 is replaced by 0.001
> 0.001/(1-0.001)
[1] 0.001001001
> log(0.001/(1-0.001))
[1] -6.906755
> #odds when 1 is replaced by (1-0.001):
> (1-0.001)/(1-(1-0.001))
[1] 999
> log((1-0.001)/(1-(1-0.001)))
[1] 6.906755
Quindi, vedete, è necessario mantenere le probabilità vicine a (0/1) e (1/0). Ti aspetti che le probabilità del registro siano comprese tra meno infinito e più infinito. Quindi, per aggiungere o sottrarre, è necessario scegliere fino a un decimale davvero lungo, in modo che le probabilità del registro si avvicinino all'infinito (o molto grande) !! La misura che considererai abbastanza grande, dipende esclusivamente da te.