C'è una differenza tra le funzioni fitted()
e predict()
? Ho notato che i modelli misti di lme4 funzionano con fitted()
ma non con predict()
.C'è una differenza tra le funzioni R installate() e predice()?
risposta
Sì, c'è. Se esiste un link function relativo al predittore lineare al valore atteso della risposta (ad esempio registro per regressione di Poisson o logit per regressione logistica), predict
restituisce i valori corretti prima dello viene applicato l'inverso della funzione di collegamento (per restituire il valore dati alla stessa scala della variabile di risposta), e fitted
lo mostra dopo lo applicato.
Ad esempio:
x = rnorm(10)
y = rpois(10, exp(x))
m = glm(y ~ x, family="poisson")
print(fitted(m))
# 1 2 3 4 5 6 7 8
# 0.3668989 0.6083009 0.4677463 0.8685777 0.8047078 0.6116263 0.5688551 0.4909217
# 9 10
# 0.5583372 0.6540281
print(predict(m))
# 1 2 3 4 5 6 7
# -1.0026690 -0.4970857 -0.7598292 -0.1408982 -0.2172761 -0.4916338 -0.5641295
# 8 9 10
# -0.7114706 -0.5827923 -0.4246050
print(all.equal(log(fitted(m)), predict(m)))
# [1] TRUE
Ciò significa che per i modelli creati mediante regressione lineare (lm
), non c'è differenza tra fitted
e predict
.
In termini pratici, ciò significa che se si desidera confrontare l'adattamento con i dati originali, è necessario utilizzare fitted
.
La funzione fitted
restituisce i valori di y-hat associati ai dati utilizzati per adattarsi al modello. La funzione predict
restituisce previsioni per un nuovo set di variabili predittive. Se non si specifica un nuovo set di variabili predittive, per impostazione predefinita utilizzerà i dati originali dando gli stessi risultati di fitted
per alcuni modelli, ma se si desidera prevedere un nuovo set di valori, è necessario predict
. La funzione predict
spesso ha anche opzioni per il tipo di previsione da restituire, il predittore lineare, la predizione trasformata in scala di risposta, la categoria più probabile, il contributo di ciascun termine nel modello, ecc.
- 1. Differenza tra le funzioni read.table e read.delim
- 2. differenza tra le funzioni window.openDatabase() e window.sqlitePlugin.openDatabase()?
- 3. Differenza tra ls() e objects() in R
- 4. Qual è la differenza tra le funzioni VarIsEmpty e VarIsEmptyParam
- 5. Differenza tra le funzioni .on() chiamate
- 6. Differenza tra le funzioni $ (finestra) .load() e $ (documento) .ready()
- 7. Differenza tra le funzioni jQuery parent(), parents() e closer()
- 8. Differenza tra le funzioni di Numel e lunghezza di MATLAB
- 9. Differenza tra partizioni() e rimuovere() le funzioni in C++
- 10. Differenza tra le specifiche e una politica?
- 11. Differenza tra glmnet() e cv.glmnet() in R?
- 12. differenza R tra espressione e as.expression
- 13. Differenza tra WebHook ASP.NET e Signal-R
- 14. qual è la differenza tra:.! e: r !?
- 15. R: Differenza tra as.dist() e dist()
- 16. C'è una differenza tra la sintassi fn e # per le funzioni anonime in Clojure?
- 17. Qual è la differenza tra sort() e sort.list() in R?
- 18. Differenza tra una "coroutine" e una "discussione"?
- 19. Qual è la differenza tra queste funzioni
- 20. Clojure: differenza tra l'implementazione di forme speciali, funzioni e macro
- 21. In Angular, qual è la differenza concettuale tra l'errore e le funzioni catch per le promesse?
- 22. Qualcuno può spiegare la differenza tra chiusura e funzioni anonime?
- 23. API di matematica CUDA: differenza tra funzioni e elementi intrinseci
- 24. Qual è la differenza tra Monad.Reader e le (->) monadi?
- 25. Qual è la differenza tra funzioni e chiusure?
- 26. R vs. Matlab: spiegazione della differenza di velocità per le funzioni rnorm, qnorm e pnorm
- 27. Differenza tra "accodamento" e "rimozione"
- 28. Differenza tra le classi System.StringComparer e System.StringComparison?
- 29. Polvere: differenza tra le sezioni logiche {?} E {#}
- 30. Funzioni e provare() in R
buona risposta fino a come va, ma puoi usare 'prevedere (m, type =" response ")' per ottenere previsioni sulla scala originale (risposta), e come @GregSnow indica sotto, 'predicict' ha opzioni aggiuntive (a seconda del caso). La versione di sviluppo di 'lme4', su r-forge, * fa * ha un metodo' predicict() '. –