ComenzarEmpieza gratis

Ajusta un modelo de regresión logística

Una vez que tengas tus conjuntos de entrenamiento y prueba aleatorios, puedes ajustar un modelo de regresión logística al conjunto de entrenamiento usando la función glm(). glm() es una versión más avanzada de lm() que permite modelos de regresión más variados, más allá de la regresión lineal por mínimos cuadrados ordinarios.

Acuérdate de pasar el argumento family = "binomial" a glm() para indicar que quieres hacer regresión logística (en lugar de lineal). Por ejemplo:

glm(Target ~ ., family = "binomial", dataset)

No te preocupes por advertencias como glm.fit: algorithm did not converge o glm.fit: fitted probabilities numerically 0 or 1 occurred. Son habituales en conjuntos de datos pequeños y, por lo general, no causan problemas. Normalmente significan que tu conjunto de datos es perfectamente separable, lo que puede generar dificultades para las matemáticas del modelo, pero la función glm() de R casi siempre es lo bastante robusta como para manejar este caso sin problemas.

Cuando tengas un modelo glm() ajustado a tu conjunto de datos, puedes predecir el resultado (p. ej., roca o mina) sobre el conjunto test usando la función predict() con el argumento type = "response":

predict(my_model, test, type = "response")

Este ejercicio forma parte del curso

Machine Learning con caret en R

Ver curso

Instrucciones del ejercicio

  • Ajusta una regresión logística llamada model para predecir Class usando todas las demás variables como predictoras. Utiliza el conjunto de entrenamiento de Sonar.
  • Realiza predicciones sobre el conjunto test con ese modelo. Llama p al resultado, como hiciste antes.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Fit glm model: model


# Predict on test: p
Editar y ejecutar código