¿Cómo trazar una curva de regresión logística en R?

En este artículo, aprenderemos a trazar una curva de regresión logística en el lenguaje de programación R.

La regresión logística es básicamente un algoritmo de clasificación supervisado. Eso nos ayuda a crear una curva diferenciadora que separa dos clases de variables. Para trazar la curva de regresión logística en el lenguaje R, usamos los siguientes métodos.

Conjunto de datos utilizado: Sample4

Método 1: Usar métodos Base R

Para trazar la curva de regresión logística en base R, primero ajustamos las variables en un modelo de regresión logística usando la función glm(). La función glm() se usa para ajustar modelos lineales generalizados, especificados dando una descripción simbólica del predictor lineal. Luego usamos ese modelo para crear un marco de datos donde la variable del eje y se cambia a su valor predicho derivado mediante el uso de la función predict() con el modelo creado anteriormente. Luego trazamos un diagrama de dispersión de los puntos originales usando la función plot() y los valores pronosticados usando la función lines().

Sintaxis:

modelo_logístico <- glm (fórmula, familia, marco de datos)

trama (marco_de_datos_original)

líneas (marco_de_datos_predicho)

Parámetro:

  • fórmula: determina la descripción simbólica del modelo a montar.
  • familia: determina la descripción de la distribución de errores y la función de enlace que se utilizará en el modelo.
  • marco de datos : determina el marco de datos que se utilizará para el propósito de ajuste

Ejemplo: Graficar regresión logística

R

# load dataframe
df <- read.csv("Sample4.csv")
 
# create logistic regression model
logistic_model <- glm(var1 ~ var2, data=df, family=binomial)
 
#Data frame with hp in ascending order
Predicted_data <- data.frame(var2=seq(
  min(df$var2), max(df$var2),len=500))
 
# Fill predicted values using regression model
Predicted_data$var1 = predict(
  logistic_model, Predicted_data, type="response")
 
# Plot Predicted data and original data points
plot(var1 ~ var2, data=df)
lines(var1 ~ var2, Predicted_data, lwd=2, col="green")

Producción:

Método 2: Usar el paquete ggplot2

Para trazar la curva logística usando la biblioteca del paquete ggplot2, usamos la función stat_smooth(). El método de argumento de la función con el valor «glm» traza la curva de regresión logística encima de un gráfico ggplot2. Entonces, primero trazamos el diagrama de dispersión deseado de los puntos de datos originales y luego lo superponemos con una curva de regresión usando la función stat_smooth().

Sintaxis:

plot + stat_smooth(método=”glm”, se, método.args)

Parámetro:

  • se: determina un valor booleano que indica si se debe mostrar el intervalo de confianza alrededor de la suavidad.
  • method.args: determina la función del método para la curva logística.

Ejemplo: Graficar regresión logística

R

# load library ggplot2
library(ggplot2)
 
# load data from CSV
df <- read.csv("Sample4.csv")
 
# Plot Predicted data and original data points
ggplot(df, aes(x=var2, y=var1)) + geom_point() +
      stat_smooth(method="glm", color="green", se=FALSE,
                method.args = list(family=binomial))

Producción:

Publicación traducida automáticamente

Artículo escrito por mishrapriyank17 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *