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
)

# =========================
# TABLAS CUALITATIVAS NOMINALES
# =========================

País <- datos$Country

TDF_País <- data.frame(table(País))

ni <- TDF_País$Freq
hi <- round((ni / sum(ni)) * 100, 2)

TDF_País <- data.frame(País = TDF_País$País, ni, hi)
Summary <- data.frame(País = "TOTAL", ni = sum(ni), hi = 100)

TDF_País_suma <- rbind(TDF_País, Summary)
colnames(TDF_País_suma) <- c("País", "ni", "hi(%)")

# =========================
# TABLA
# =========================

TDF_País_suma %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nro. 2*"),
    subtitle = md("**Tabla de distribución de los países**")
  ) %>%
  tab_source_note(
    source_note = md("Autor: Grupo 3")
  ) %>%
  tab_options(
    table.border.top.color = "black",
    table.border.bottom.color = "black",
    table.border.top.style = "solid",
    table.border.bottom.style = "solid",
    column_labels.border.top.color = "black",
    column_labels.border.bottom.color = "black",
    column_labels.border.bottom.width = px(2),
    row.striping.include_table_body = TRUE,
    heading.border.bottom.color = "black",
    heading.border.bottom.width = px(2),
    table_body.hlines.color = "gray",
    table_body.border.bottom.color = "black"
  )
Tabla Nro. 2
Tabla de distribución de los países
País ni hi(%)
Australia 278 9.27
Brazil 293 9.77
China 319 10.63
Germany 283 9.43
India 311 10.37
Kenya 271 9.03
Mexico 314 10.47
Nigeria 309 10.30
Pakistan 305 10.17
USA 317 10.57
TOTAL 3000 100.00
Autor: Grupo 3
# =========================
# GRÁFICAS
# =========================

# Diagrama de barras local ni
barplot(ni,
        main = "Gráfica N°6: Distribución de los países",
        xlab = "Países",
        ylab = "Cantidad",
        col = "red",
        ylim = c(0,400),
        las = 2,
        cex.names = 0.6,
        names.arg = TDF_País$País)

# Diagrama de barras global ni
barplot(ni,
        main = "Gráfica N°7: Distribución de los países",
        xlab = "Países",
        ylab = "Cantidad",
        col = "skyblue",
        ylim = c(0,3000),
        las = 2,
        cex.names = 0.6,
        names.arg = TDF_País$País)

# Diagrama de barras local hi(%)
barplot(hi,
        main = "Gráfica N°8: Distribución porcentual de los países",
        xlab = "Países",
        ylab = "Porcentaje",
        col = "green",
        ylim = c(0,15),
        las = 2,
        cex.names = 0.6,
        names.arg = TDF_País$País)

# Diagrama de barras global hi(%)
barplot(hi,
        main = "Gráfica N°9: Distribución porcentual de los países",
        xlab = "Países",
        ylab = "Porcentaje",
        col = "blue",
        ylim = c(0,100),
        las = 2,
        cex.names = 0.6,
        names.arg = TDF_País$País)

# =========================
# 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°10 Distribución porcentual de los países",
  cex = 1
)

legend(
  "topright",
  legend = TDF_País$País,
  fill = colores,
  title = "Leyenda",
  cex = 0.5,
  xpd = TRUE
)

# =========================
# INDICADORES
# =========================
moda <- function(x) {
  frec <- table(x)
  names(frec)[which.max(frec)]
}
moda_país <- moda(datos$Country)
moda_país
## [1] "China"
cat("El valor más frecuente de la variable País es:", moda_país)
## El valor más frecuente de la variable País es: China