# ==============================================================================
# ESTADÍSTICA INFERENCIAL
# VARIABLE CUALITATIVA NOMINAL: ZONA
# Autor: Ariel Chiluisa
# Fecha: 23/12/2025
# ==============================================================================
# --------------------------
# 1. CARGA DE PAQUETES
# --------------------------
library(gt)
library(dplyr)
# --------------------------
# 2. CARGA DE DATOS
# --------------------------
datos <- read.csv("C:/Users/JOSELYN/Desktop/kangle/Datos Cambiados.csv",
header = TRUE,
dec = ".",
sep = ",")
# --------------------------
# 3. TABLA DE FRECUENCIAS – ZONA
# --------------------------
Zona <- datos$Zona
TDF_Zona <- data.frame(table(Zona))
ni <- TDF_Zona$Freq
hi <- round((ni / sum(ni)) * 100, 2)
P <- hi # P = hi (%)
Zona <- TDF_Zona$Zona
TDF_Zona <- data.frame(Zona, ni, hi, P)
# Fila TOTAL
Summary <- data.frame(
Zona = "TOTAL",
ni = sum(ni),
hi = 100,
P = 100
)
TDF_Zona <- rbind(TDF_Zona, Summary)
colnames(TDF_Zona) <- c("Zona", "ni", "hi(%)", "P")
# --------------------------
# 4. TABLA GT
# --------------------------
TDF_Zona %>%
gt() %>%
tab_header(
title = md("*Tabla Nro. 1*"),
subtitle = md("**Distribución de frecuencia de la variable Zona, estudio de calidad del aire en India (2015–2020)**")
) %>%
tab_source_note(
source_note = md("Autor: Grupo 2
Fuente: https://www.kaggle.com/datasets/rohanrao/air-quality-data-in-india")
) %>%
tab_options(
table.border.top.color = "black",
table.border.bottom.color = "black",
column_labels.border.bottom.color = "black",
column_labels.border.bottom.width = px(2),
row.striping.include_table_body = TRUE
)
| Tabla Nro. 1 | |||
| Distribución de frecuencia de la variable Zona, estudio de calidad del aire en India (2015–2020) | |||
| Zona | ni | hi(%) | P |
|---|---|---|---|
| Centro | 289 | 0.98 | 0.98 |
| Este | 7873 | 26.66 | 26.66 |
| Oeste | 21369 | 72.36 | 72.36 |
| TOTAL | 29531 | 100.00 | 100.00 |
| Autor: Grupo 2 Fuente: https://www.kaggle.com/datasets/rohanrao/air-quality-data-in-india |
|||
# --------------------------
# 5. GRÁFICAS (sin TOTAL)
# --------------------------
TablaPlot <- TDF_Zona[TDF_Zona$Zona != "TOTAL", ]
# Gráfica 1: Frecuencia absoluta
barplot(
TablaPlot$ni,
names.arg = TablaPlot$Zona,
main = "Gráfica Nro. 1: Distribución de Zonas (Frecuencia Absoluta)",
xlab = "Zonas",
ylab = "Cantidad",
col = "lightblue",
las = 2,
ylim = c(0, max(TablaPlot$ni) * 1.1)
)
# Gráfica 2: Frecuencia relativa (%)
barplot(
TablaPlot$`hi(%)`,
names.arg = TablaPlot$Zona,
main = "Gráfica Nro. 2: Distribución porcentual de Zonas",
xlab = "Zonas",
ylab = "Porcentaje (%)",
col = "lightgreen",
las = 2,
ylim = c(0, 100)
)
# Gráfica 3: Probabilidad (P)
barplot(
TablaPlot$P,
names.arg = TablaPlot$Zona,
main = "Gráfica Nro. 3: Distribución de probabilidad de la variable Zona",
xlab = "Zonas",
ylab = "Probabilidad (%)",
col = "orange",
las = 2,
ylim = c(0, 100)
)
zona_mayor <- TablaPlot$Zona[which.max(TablaPlot$ni)]
prob_zona <- TablaPlot$P[which.max(TablaPlot$ni)]
print(paste("La zona más probable es:", zona_mayor,
"con una probabilidad de", prob_zona, "%"))
## [1] "La zona más probable es: Oeste con una probabilidad de 72.36 %"