# ========================= 
# ESTADƍSTICA DESCRIPTIVA
# TABLA DE FRECUENCIA
# VARIABLE ORDINAL
# =========================

library(gt)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
# -------------------------
# Cargar datos
# -------------------------

datos <- read.csv(
  "waterPollution.csv",
  sep = ",",
  stringsAsFactors = FALSE
)

# =========================
# VARIABLE ORDINAL
# =========================

Nivel_Literacy <- cut(
  datos$literacyRate_2010_2018,
  breaks = c(0, 15, 80, 87.2),
  labels = c("Bajo", "Moderado", "Bueno"),
  include.lowest = TRUE,
  ordered_result = TRUE
)

# =========================
# TABLA DE FRECUENCIAS
# =========================

TDF_Literacy <- data.frame(table(Nivel_Literacy))

# Frecuencia absoluta
ni <- TDF_Literacy$Freq

# Frecuencia relativa
hi <- round((ni / sum(ni)) * 100, 2)

# Construcción tabla
TDF_Literacy <- data.frame(
  Nivel_Literacy = TDF_Literacy$Nivel_Literacy,
  ni,
  hi
)

# =========================
# FILA TOTAL
# =========================

Summary <- data.frame(
  Nivel_Literacy = "TOTAL",
  ni = sum(ni),
  hi = 100
)

# Unir tabla y total
TDF_Literacy_suma <- rbind(TDF_Literacy, Summary)

# Cambiar nombres columnas
colnames(TDF_Literacy_suma) <- c(
  "Nivel_Literacy",
  "ni",
  "hi(%)"
)

# =========================
# TABLA FORMATEADA
# =========================

TDF_Literacy_suma %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nro. 1*"),
    subtitle = md("**Distribución del Nivel de Alfabetización**")
  ) %>%
  tab_source_note(
    source_note = md("Autor: Grupo 3")
  )
Tabla Nro. 1
Distribución del Nivel de Alfabetización
Nivel_Literacy ni hi(%)
Bajo 16288 81.88
Moderado 464 2.33
Bueno 3141 15.79
TOTAL 19893 100.00
Autor: Grupo 3
# =========================
# GRƁFICAS
# =========================

#Diagrama de barras local ni
barplot(ni,
        main = "Distribución del Nivel de Alfabetización",
        xlab = "Nivel de alfabetización",
        ylab = "Cantidad",
        col = "red",
        ylim = c(0,20000),
        las = 1,
        cex.names = 0.7,
        names.arg = TDF_Literacy$Nivel_Literacy)

#Diagrama de barras local hi(%)
barplot(hi,
        main = "Distribución del Nivel de Alfabetización",
        xlab = "Nivel de alfabetización",
        ylab = "Porcentaje",
        col = "green",
        ylim = c(0,100),
        las = 1,
        cex.names = 0.7,
        names.arg = TDF_Literacy$Nivel_Literacy)

# =========================
# 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 = "Distribución del Nivel de Alfabetización",
  cex = 1
)

legend(
  "topright",
  legend = TDF_Literacy$Nivel_Literacy,
  fill = colores,
  title = "Leyenda",
  cex = 0.6,
  xpd = TRUE
)