UNIVERSIDAD CENTRAL DEL ECUADOR

FIGEMPA-Ingeniería Ambiental

#Estadística multivariable
#Autor: Lorien Arcentales
#Fecha: 01/02/2026
#Carga de paquetes
library(scatterplot3d)
library(gt)
library(dplyr)
# 1. Seleccionar tres variables

datos<-read.csv("city_day.csv", header = TRUE, dec = ".",
                sep = ",")
limpiar_columna <- function(df, cols) {
  for (col in cols) {
    df[[col]] <- na_if(df[[col]], "-")
    df[[col]] <- as.numeric(df[[col]])
  }
  return(df)
}
datos <- limpiar_columna(datos, c("PM2.5", "PM10", "NO2"))
# Filtrar filas completas
datos_limpios <- datos %>% filter(!is.na(PM2.5) & !is.na(PM10) & !is.na(NO2))

# Asignar variables y=c+bx2+ax1
y  <- datos_limpios$PM2.5
x1 <- datos_limpios$PM10
x2 <- datos_limpios$NO2



#Causa y efecto: En este análisis, PM10 y NO2 actúan como factores que influyen en la concentración de PM2.5 en el aire. Es decir, el aumento de PM10 o NO2 tiende a incrementar los niveles de PM2.5, mostrando que estas partículas y gases contaminantes son causas que determinan el efecto en la contaminación por PM2.5.

# 2. Tabla de tripleta de valores (TTP)

TTP<-data.frame(x1,x2,y)

# 3. Gráfica de dispersión 
regresion<- scatterplot3d(x1,x2,y, main = "Gráfica No1: Diagrama de disperción entre el PM10, PM2.5 y 
 el NO2, en el estudio calidad del aire en la India entre 2015 y 2020",
                          xlab = "PM10 (µg/m3)",ylab = "NO2 (µg/m3)",zlab = " PM2.5 (µg/m3)",
                          color = "blue",pch = 7)                       

# 4. Conjetura

#La distribución de los puntos muestra un modelo de plano (tipo rampa) porque que el PM2.5 depende simultáneamente del PM10 y el NO2

# 5. Ajuste del modelo
regresionmultiple<- lm(y~x1+x2)
regresionmultiple
## 
## Call:
## lm(formula = y ~ x1 + x2)
## 
## Coefficients:
## (Intercept)           x1           x2  
##     -4.2330       0.4896       0.1362
#Coeficientes
a<-regresionmultiple$coefficients[2]
a
##        x1 
## 0.4896459
b<-regresionmultiple$coefficients[3]
b
##        x2 
## 0.1361545
c<- regresionmultiple$coefficients[1]
c
## (Intercept) 
##   -4.232989
# 6. Gráfica de dispersión modelo-realidad

regresion<- scatterplot3d(x1,x2,y,angle = 225, main = "Gráfica No2: Regresión lineal entre el PM10, PM2.5 y 
 el NO2, en el estudio calidad del aire en la India entre 2015 y 2020 ",
                          xlab = "PM10 (µg/m3)",ylab = "NO2 (µg/m3)",zlab = " PM2.5 (µg/m3)",
                          color = "blue",pch = 7)     

regresion$plane3d(regresionmultiple)

# 7. Test de bondad
#Test de Pearson, coeficiente de correlación
r<- cor(y,x1+x2)*100
r
## [1] 84.72939
# 8. Coeficiente de determinación muestral
r2<- r^2/100
r2
## [1] 71.7907
# 9. Restricciones
#Dominio [x1]: D= {R+^0}
#Dominio [y]: D= {R+^0}
#Dominio [x2]: D= {R+^0} 
# ¿Existe algún valor en dominio de x1,x2 que sustituido en el modelo matemático genere un valor en y fuera de su dominio?
#Si, si existe debido a que el modelo de regresión múltiple para PM2.5 tiene un intercepto negativo, por lo que solo es válido para combinaciones de PM10 y NO2 que cumplan 0.489x1+0.1361x2 >= 4.233 (µg/m3),l modelo no da resultados físicos (negativos) para valores muy bajos de PM10 y NO2, y solo sirve cuando los contaminantes tienen niveles suficientemente altos para que PM2.5 sea positiva.

# 10. Aplicaciones del modelo
# Que PM2.5 espero cuando tenemos un PM10 de 100(µg/m3) y una concentración de 200 (µg/m3) de NO2
PM2.5_esperado<- -4.232989+0.4896459*200+0.1361545*100
PM2.5_esperado
## [1] 107.3116
# 11. Conclusión 
# Entre el PM2.5 (µg/m3), PM10 (µg/m3) y NO2 (µg/m3) existe la relación tipo lineal cuya ecuación es y=  -4.232989 +0.1361545x2+0.4896x1 siendo y= PM2.5 (µg/m3), x2= NO2 (µg/m3) y x1= PM10 (µg/m3),donde existe restricciones y  podemos afirmar que EL PM2.5 esta influenciada en un 84.72% de la concentración de NO2 y PM10, el 15.28% se debe a otros factores. Por ejemplo cuando el PM10 vale 100 (µg/m3) y NO2 200 (µg/m3) obtenemos un PM2.5 de  107.31 (µg/m3), lo  que en si significa muy contaminado pero no extremo