UNIVERSIDAD CENTRAL DEL ECUADOR

PROYECTO: FOCOS DE CALOR EN EL ECUADOR

AUTORES: GUERRERO MARIA GABRIELA, PUCHAICELA MONICA, ZURITA JOHANNA

FECHA: 14/05/2025

# Leer y preparar datos
df <- read.csv("Focos de Calor 2021.csv", header = TRUE, sep = ",", dec = ".")

latitud <- df$LATITUDE
brillo <- df$BRIGHTNESS

# Escalar valores grandes
Latitud <- latitud / 1e12
Brillo <- brillo / 1e16

x <- Latitud  #(variable independiente, predictor)
y <- Brillo #(variable dependiente, respuesta)
#Justificación:
#LATITUDE es una variable espacial (posición geográfica),
#generalmente considerada como variable explicativa o 
#predictora porque no depende de BRIGHTNESS.
#BRIGHTNESS es una medida que puede variar según la latitud 
# por eso la tratamos como variable dependiente o respuesta.
# Limpiar datos
datos_limpios <- na.omit(data.frame(x, y))
datos_pot <- subset(datos_limpios, x > 0 & y > 0)

x <- datos_pot$x
y <- datos_pot$y

# Transformación logarítmica
logx <- log(x)
logy <- log(y)

# Modelo potencial
regresion_potencial <- lm(logy ~ logx)
summary(regresion_potencial)
## 
## Call:
## lm(formula = logy ~ logx)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.121830 -0.016841  0.005943  0.024647  0.119757 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 3.432324   0.006145   558.5   <2e-16 ***
## logx        0.012327   0.001121    11.0   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.04344 on 928 degrees of freedom
## Multiple R-squared:  0.1153, Adjusted R-squared:  0.1143 
## F-statistic: 120.9 on 1 and 928 DF,  p-value: < 2.2e-16
# Coeficientes del modelo
beta0_pot <- coef(regresion_potencial)[1]
beta1_pot <- coef(regresion_potencial)[2]
a_pot <- exp(beta0_pot)
b_pot <- beta1_pot

# Mostrar modelo
cat("Modelo potencial: BRIGHTNESS = ", round(a_pot, 4), " * LATITUDE ^ ", round(b_pot, 4), "\n")
## Modelo potencial: BRIGHTNESS =  30.9485  * LATITUDE ^  0.0123
# Gráfico con colores suaves
plot(x, y,
     col = "skyblue",      # color de los puntos
     pch = 16,             # tipo de punto
     main = "Regresión Potencial: BRIGHTNESS vs LATITUDE",
     xlab = "LATITUDE", ylab = "BRIGHTNESS",
     col.lab = "gray30", col.main = "gray30")

# Curva ajustada en rojo claro
curve(a_pot * x^b_pot, from = min(x), to = max(x),
      add = TRUE, col = "#FF6F61", lwd = 2)

# Correlación
r_potencial <- cor(logx, logy)*100
cat("Correlación potencial (log-log):", round(r_potencial, 4), "%\n")
## Correlación potencial (log-log): 33.9514 %
# Leer y preparar datos
df <- read.csv("Focos de Calor 2021.csv", header = TRUE, sep = ",", dec = ".")

latitud <- df$LATITUDE
brillo <- df$BRIGHTNESS

# Escalar valores grandes
Latitud <- latitud / 1e16
Brillo <- brillo / 1e16

x <- Latitud
y <- Brillo

# Limpiar datos
datos_limpios <- na.omit(data.frame(x, y))
datos_pot <- subset(datos_limpios, x > 0 & y > 0)

x <- datos_pot$x
y <- datos_pot$y

# Crear variable para regresión polinómica grado 2
x2 <- x^2

# Ajustar modelo polinómico grado 2
regresion_poly2 <- lm(y ~ x + x2)

# Resumen del modelo
summary(regresion_poly2)
## 
## Call:
## lm(formula = y ~ x + x2)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.9117 -0.6208  0.2029  0.8084  4.1472 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   32.37014    0.09433 343.142  < 2e-16 ***
## x             30.98548    5.05505   6.130  1.3e-09 ***
## x2          -177.36077   48.55667  -3.653 0.000274 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.431 on 927 degrees of freedom
## Multiple R-squared:  0.09472,    Adjusted R-squared:  0.09277 
## F-statistic:  48.5 on 2 and 927 DF,  p-value: < 2.2e-16
# Extraer coeficientes
coeficientes <- coef(regresion_poly2)
cat("Modelo polinómico grado 2: \n")
## Modelo polinómico grado 2:
cat("BRIGHTNESS =", round(coeficientes[1], 6), "+", round(coeficientes[2], 6), "* LATITUDE +",
    round(coeficientes[3], 6), "* LATITUDE^2\n")
## BRIGHTNESS = 32.37014 + 30.98548 * LATITUDE + -177.3608 * LATITUDE^2
# Gráfico con puntos y curva ajustada
plot(x, y,
     col = "skyblue",
     pch = 16,
     main = "Regresión Polinómica Grado 2: BRIGHTNESS vs LATITUDE",
     xlab = "LATITUDE", ylab = "BRIGHTNESS",
     col.lab = "gray30", col.main = "gray30")

# Secuencia para curva ajustada
x_seq <- seq(min(x), max(x), length.out = 200)

# Valores predichos con el modelo polinómico grado 2
y_pred <- coeficientes[1] + coeficientes[2]*x_seq + coeficientes[3]*x_seq^2

# Añadir curva ajustada
lines(x_seq, y_pred, col = "#FF6F61", lwd = 2)

# Calcular correlación lineal
r <- cor(x, y)

# Mostrar correlación en porcentaje
cat("Correlación lineal entre LATITUDE y BRIGHTNESS: ", round(r * 100, 2), "%\n")
## Correlación lineal entre LATITUDE y BRIGHTNESS:  28.58 %