¿Hay alguna diferencia entre las funciones fitted()
y predict()
? Me he dado cuenta de que los modelos mixtos de lme4 funcionan con fitted()
pero no con predict()
.¿Hay alguna diferencia entre las funciones R ajustadas() y predecir()?
Respuesta
Sí, la hay. Si hay un link function que relaciona el predictor lineal con el valor esperado de la respuesta (como log para regresión de Poisson o logit para regresión logística), predict
devuelve los valores ajustados antes de se aplica el inverso de la función de enlace (para devolver el datos a la misma escala que la variable de respuesta), y fitted
lo muestra después de se aplica.
Por ejemplo:
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
Esto significa que para los modelos creados por regresión lineal (lm
), no hay ninguna diferencia entre fitted
y predict
.
En términos prácticos, esto significa que si desea comparar el ajuste con los datos originales, debe usar fitted
.
La función fitted
devuelve los valores de y-hat asociados con los datos utilizados para adaptarse al modelo. La función predict
devuelve predicciones para un nuevo conjunto de variables de predicción. Si no especifica un nuevo conjunto de variables de predicción, utilizará los datos originales de forma predeterminada dando los mismos resultados que fitted
para algunos modelos, pero si desea predecir un nuevo conjunto de valores, entonces necesita predict
. La función predict
a menudo también tiene opciones para qué tipo de predicción regresar, el predictor lineal, la predicción transformada en la escala de respuesta, la categoría más probable, la contribución de cada término en el modelo, etc.
- 1. Diferencia entre las funciones read.table y read.delim
- 2. ¿Hay alguna diferencia entre DataTable.Clear y DataTable.Rows.Clear?
- 3. ¿Hay alguna diferencia entre las manchas y los componentes conectados?
- 4. ¿Hay alguna diferencia entre CPython y Python
- 5. ¿Hay alguna diferencia entre `ListView.invalidateViews()` y 'Adapter.notifyDataSetChanged()'?
- 6. ¿Hay alguna diferencia entre System.Windows.Clipboard y System.Windows.Forms.Clipboard?
- 7. ¿Hay alguna diferencia entre MsgBox y MessageBox.Show?
- 8. ¿Hay alguna diferencia entre log4net.Config.BasicConfigurator.Configure() y log4net.Config.XmlConfigurator.Configure()?
- 9. ¿Hay alguna diferencia entre! == y! = En PHP?
- 10. ¿Hay alguna diferencia entre SSLv3 y TLS1.0?
- 11. ¿Hay alguna diferencia entre: window.localStorage y localStorage?
- 12. ¿Hay alguna diferencia entre .NET y ASP.NET
- 13. ¿Hay alguna diferencia entre is_int() y ctype_digit()?
- 14. ¿Hay alguna diferencia entre gluLookAt() y glFrustum()?
- 15. ¿Hay alguna diferencia entre readonly y {get; }
- 16. ¿Hay alguna diferencia entre UITableViewCellAccessoryDetailDisclosureButton y UITableViewCellAccessoryDisclosureIndicator
- 17. ¿Hay alguna diferencia entre (local), '.' y localhost?
- 18. Diferencia entre var y esto en las funciones de Javascript?
- 19. ¿Hay alguna diferencia entre la sintaxis fn y # para funciones anónimas en Clojure?
- 20. ¿hay alguna diferencia entre [Serializable] y [Serializable()] en C#?
- 21. objetivo c diferencia entre funciones y métodos
- 22. ¿Hay alguna diferencia entre 'imprimir' y 'eco' en PHP?
- 23. ¿Hay alguna diferencia efectiva entre el operador get y defineProperty?
- 24. ¿Hay alguna diferencia importante entre Camping y Sinatra?
- 25. ¿Hay alguna diferencia entre RPC e IPC?
- 26. ¿Hay alguna diferencia (de rendimiento) entre Depurar y Liberar?
- 27. diferencia entre las funciones de representación Yii
- 28. ¿Hay alguna diferencia entre un control y un widget?
- 29. ¿Hay alguna diferencia entre int & a y int & a?
- 30. ¿Hay alguna diferencia entre un GUID y un UUID?
buena respuesta hasta ahora como va, pero puede usar 'predict (m, type =" response ")' para obtener predicciones en la escala original (respuesta), y como @GregSnow señala a continuación, 'predict' tiene opciones adicionales (dependiendo del caso)) La versión de desarrollo de 'lme4', en r-forge, * does * tiene un método' predict() '. –