Comparativa entre regresión lineal simple y logística

  • Caso de estudio: Relación entre pH y la temperatura de agua de pozos
library(pacman)
p_load("readxl", "DT")
pozos <- read_excel("pozos.xlsx", col_types = c("numeric", "numeric", "numeric"))
 View(pozos)
  • Visualizar datos en una tabla interactiva
datatable(pozos)

Regresión lineal

Matriz de diagramas de dispersión

pairs(pozos)

Matriz de coeficientes de correlación

cor(pozos)
##             TEMP        PHB          PH
## TEMP  1.00000000 0.07826025 -0.02029087
## PHB   0.07826025 1.00000000  0.31999640
## PH   -0.02029087 0.31999640  1.00000000

Recta de minimos cuadrados

regresion <- lm(PH ~ TEMP, data=pozos)
summary(regresion)
## 
## Call:
## lm(formula = PH ~ TEMP, data = pozos)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.78955 -0.09220  0.01089  0.11089  0.59587 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  7.017231   0.366448  19.149   <2e-16 ***
## TEMP        -0.004418   0.012761  -0.346    0.729    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2219 on 291 degrees of freedom
## Multiple R-squared:  0.0004117,  Adjusted R-squared:  -0.003023 
## F-statistic: 0.1199 on 1 and 291 DF,  p-value: 0.7294

\[ y = 7.017231 - 0.004418\]

Gráfica de la recta de minimos cuadrados

plot(pozos$TEMP, pozos$PH, xlab = "Temperatura pozo", ylab = "pH pozo")
abline(regresion)

Regresión logística

  • Calcular la frecuencia con la cual se presentan los valores de 0 y de 1
table(pozos$PHB)
## 
##   0   1 
## 263  30

Representar de manera gráfica la temperatura y el pH

colores <- NULL
colores[pozos$PHB==0] <- "red"
colores[pozos$PHB==1] <- "green"
plot(pozos$TEMP, pozos$PHB, pch=21,bg=colores, xlab = "Temperatura pozo" , ylab = "pH pozo")

Ajuste de la curva de regresión logística

datos <- data.frame(TEMP = seq(25,33,0.1))
probabilidades <- predict(regresion, datos, type = "response")
#Gráfia
plot(pozos$TEMP, pozos$PHB, pch=21, bg=colores, xlab = "Temperatura pozo", ylab = "pH pozo")
lines(datos$TEMP, probabilidades, col="blue", lwd=0)

  • Tarea: curva de regresión logística y explicar relación entre la temperatura y el pH del pozo

Pruebas para que salga la curva

rlogis(pozos, location = 26, scale = 1)
## [1] 25.72858 24.78420 24.82613
  • Busque para hacer que saliera la curva pero no encotre.