UNIVERSIDAD CENTRAL DEL ECUADOR
ESTUDIO ESTADÍSTICO DE LA CONTAMINACIÓN DEL SUELO Y SU IMPACTO EN LA SALUD
FECHA: 19/11/2025
# =========================
# ESTADÍSTICA Descriptiva
# Fecha: 19/11/2025
# =========================
library(gt)
library(dplyr)
# -------------------------
# Cargar datos
# -------------------------
setwd("C:/Users/Alexander/Downloads")
datos <- read.csv(
"soil_pollution_diseases.csv",
sep = ",",
stringsAsFactors = FALSE
)
# =========================
# VARIABLE ORDINAL
# =========================
Nivel_Enfermedad <- datos$Disease_Severity
Nivel_Enfermedad <- as.factor(Nivel_Enfermedad)
# =========================
# TABLA DE FRECUENCIAS
# =========================
TDF_Nivel <- data.frame(table(Nivel_Enfermedad))
ni <- TDF_Nivel$Freq
hi <- round((ni / sum(ni)) * 100, 2)
TDF_Nivel <- data.frame(
Nivel_Enfermedad = TDF_Nivel$Nivel_Enfermedad,
ni,
hi
)
Summary <- data.frame(
Nivel_Enfermedad = "TOTAL",
ni = sum(ni),
hi = 100
)
TDF_Nivel_suma <- rbind(TDF_Nivel, Summary)
colnames(TDF_Nivel_suma) <- c("Nivel_Enfermedad", "ni", "hi(%)")
# =========================
# TABLA FORMATEADA
# =========================
TDF_Nivel_suma %>%
gt() %>%
tab_header(
title = md("*Tabla Nro. 11*"),
subtitle = md("**Tabla de distribución del nivel de enfermedad**")
) %>%
tab_source_note(
source_note = md("Autor: Grupo 3")
)
| Tabla Nro. 11 | ||
| Tabla de distribución del nivel de enfermedad | ||
| Nivel_Enfermedad | ni | hi(%) |
|---|---|---|
| Mild | 979 | 32.63 |
| Moderate | 998 | 33.27 |
| Severe | 1023 | 34.10 |
| TOTAL | 3000 | 100.00 |
| Autor: Grupo 3 | ||
# =========================
# GRÁFICAS
# =========================
# 1️⃣ Diagrama de barras local ni
barplot(ni,
main = "Gráfica N°51: Distribución del nivel de enfermedad",
xlab = "Nivel de enfermedad",
ylab = "Cantidad",
col = "red",
ylim = c(0,1000),
las = 1,
cex.names = 0.7,
names.arg = TDF_Nivel$Nivel_Enfermedad)
# 2️⃣ Diagrama de barras global ni
barplot(ni,
main = "Gráfica N°52: Distribución del nivel de enfermedad",
xlab = "Nivel de enfermedad",
ylab = "Cantidad",
col = "skyblue",
ylim = c(0,3000),
las = 1,
cex.names = 0.7,
names.arg = TDF_Nivel$Nivel_Enfermedad)
# 3️⃣ Diagrama de barras local hi(%)
barplot(hi,
main = "Gráfica N°53: Distribución porcentual del nivel de enfermedad",
xlab = "Nivel de enfermedad",
ylab = "Porcentaje",
col = "green",
ylim = c(0,40),
las = 1,
cex.names = 0.7,
names.arg = TDF_Nivel$Nivel_Enfermedad)
# 4️⃣ Diagrama de barras global hi(%)
barplot(hi,
main = "Gráfica N°54: Distribución porcentual del nivel de enfermedad",
xlab = "Nivel de enfermedad",
ylab = "Porcentaje",
col = "blue",
ylim = c(0,100),
las = 1,
cex.names = 0.7,
names.arg = TDF_Nivel$Nivel_Enfermedad)
# =========================
# DIAGRAMA CIRCULAR
# =========================
etiquetas <- paste0(hi, " %")
colores <- c("yellow", "khaki1", "gold", "orange", "darkorange", "red")
par(mar = c(2,2,4,6))
pie(
hi,
labels = etiquetas,
col = colores,
main = "Gráfica N°55: Distribución porcentual del nivel de enfermedad",
cex = 1
)
legend(
"topright",
legend = TDF_Nivel$Nivel_Enfermedad,
fill = colores,
title = "Leyenda",
cex = 0.6,
xpd = TRUE
)
# =========================
# MEDIDAS DE TENDENCIA CENTRAL
# =========================
# Moda
moda <- function(x){
frec <- table(x)
names(frec)[which.max(frec)]
}
moda_nivel <- moda(Nivel_Enfermedad)
# Mediana
Nivel_num <- as.numeric(Nivel_Enfermedad)
mediana_pos <- median(Nivel_num)
mediana_nivel <- levels(Nivel_Enfermedad)[round(mediana_pos)]
moda_nivel
## [1] "Severe"
mediana_nivel
## [1] "Moderate"
# =========================
# CONCLUSIÓN
# =========================
cat("La variable Nivel_Enfermedad gira entorno a", mediana_nivel)
## La variable Nivel_Enfermedad gira entorno a Moderate