ANÁLISIS ESTADÍSTICO

CARGA DE DATOS Y LIBRERÍAS

CARGA DE DATOS

library(dplyr)
library(stringr)
library(gt)

datos <- read.csv("D:/provincias_estados_unidos_2500.csv")

ASIGNACION DE VARIABLES

ASIGNACION DE VARIABLES

df_provincia <- data.frame(provincia = toupper(trimws(datos$PROVINCIA)))


df_provincia$provincia <- case_when(
  # --- ESTADOS DEL NORTE ---
  df_provincia$provincia %in% c("WASHINGTON", "OREGON", "IDAHO", "MONTANA", "NORTH DAKOTA", 
                                "SOUTH DAKOTA", "MINNESOTA", "WISCONSIN", "MICHIGAN", "WYOMING",
                                "MAINE", "NEW HAMPSHIRE", "VERMONT", "MASSACHUSETTS", 
                                "RHODE ISLAND", "CONNECTICUT", "NEW YORK") ~ "Norte",
  
  # --- ESTADOS DEL CENTRO ---
  df_provincia$provincia %in% c("NEVADA", "UTAH", "COLORADO", "NEBRASKA", "IOWA", 
                                "ILLINOIS", "INDIANA", "OHIO", "CALIFORNIA", "SUR DE CALIFORNIA",
                                "NORTE DE CALIFORNIA", "KANSAS", "MISSOURI", "KENTUCKY", 
                                "WEST VIRGINIA", "VIRGINIA", "MARYLAND", "DELAWARE", 
                                "PENNSYLVANIA", "NEW JERSEY") ~ "Centro",
  
  # --- ESTADOS DEL SUR ---
  df_provincia$provincia %in% c("ARIZONA", "NEW MEXICO", "TEXAS", "OKLAHOMA", "ARKANSAS", 
                                "LOUISIANA", "MISSISSIPPI", "ALABAMA", "TENNESSEE", 
                                "NORTH CAROLINA", "SOUTH CAROLINA", "GEORGIA", "FLORIDA") ~ "Sur",
  
  TRUE ~ "Centro"
)

orden_provincia <- c(
  "Norte",
  "Centro",
  "Sur"
)

df_provincia$provincia <- factor(
  df_provincia$provincia,
  levels = orden_provincia,
  ordered = TRUE
)

TABLA DE DISTRIBUCIÓN DE CANTIDAD

TABLA DE DISTRIBUCION DE CANTIDAD

TDF_provincia <- df_provincia %>%
  count(provincia, name = "ni") %>%
  arrange(provincia)

# Cálculo inicial de porcentajes
TDF_provincia <- TDF_provincia %>%
  mutate(hi = round(ni / sum(ni) * 100, 0))

# Ajuste matemático para forzar que la suma de 'hi' sea exactamente 100%
diferencia <- 100 - sum(TDF_provincia$hi, na.rm = TRUE)
if (diferencia != 0 & nrow(TDF_provincia) > 0) {
  pos_max <- which.max(TDF_provincia$ni)
  TDF_provincia$hi[pos_max] <- TDF_provincia$hi[pos_max] + diferencia
}


tabla_provincia <- TDF_provincia %>%
  gt() %>%
  tab_header(
    title = "Tabla N° 1",
    subtitle = "Distribución por Región de la Provincia"
  ) %>%
  grand_summary_rows(
    columns = c(ni, hi),
    fns = list(Total = ~sum(., na.rm = TRUE)),
    fmt = list(~fmt_number(., decimals = 0))
  )

tabla_provincia
Tabla N° 1
Distribución por Región de la Provincia
provincia ni hi
Norte 914 37
Centro 978 39
Sur 608 24
Total 2,500 100
# Agregamos fila TOTAL
tabla_final_provincia <- TDF_provincia %>%
  mutate(
    provincia = as.character(provincia)
  )

tabla_final_provincia <- bind_rows(
  tabla_final_provincia,
  data.frame(
    provincia = "TOTAL",
    ni = sum(tabla_final_provincia$ni),
    hi = sum(tabla_final_provincia$hi)
  )
)

# TABLA ESQUELETO
tabla_provincia_gt <- tabla_final_provincia %>%

  gt() %>%

  tab_header(
    title = md("**Tabla Nº2**"),
    subtitle = md("Distribución ordinal por región de la provincia")
  ) %>%

  cols_label(
    provincia = "Región",
    ni = "Frecuencia",
    hi = "Porcentaje (%)"
  ) %>%

  cols_align(
    align = "center",
    columns = everything()
  ) %>%

  fmt_number(
    columns = c(ni, hi),
    decimals = 0
  ) %>%

  tab_style(
    style = cell_text(weight = "bold"),
    locations = cells_body(
      rows = provincia == "TOTAL"
    )
  ) %>%

  tab_source_note(
    source_note = md("Autor: Grupo 2")
  )

tabla_provincia_gt
Tabla Nº2
Distribución ordinal por región de la provincia
Región Frecuencia Porcentaje (%)
Norte 914 37
Centro 978 39
Sur 608 24
TOTAL 2,500 100
Autor: Grupo 2

GRÁFICAS DE DISTRIBUCIÓN DE CANTIDAD

# Gráfica Nº1: Frecuencia absoluta
barplot(TDF_provincia$ni,
        main = "Gráfica Nº1: Frecuencia por Región",
        xlab = "Región",
        ylab = "Cantidad (ni)",
        col = "steelblue",
        names.arg = TDF_provincia$provincia,
        cex.names = 0.8,
        las = 1)

# Gráfica Nº2: Frecuencia absoluta ajustada
barplot(TDF_provincia$ni,
        main = "Gráfica Nº2: Frecuencia por Región (Escala Ajustada)",
        xlab = "Región",
        ylab = "Cantidad (ni)",
        col = "steelblue",
        names.arg = TDF_provincia$provincia,
        cex.names = 0.8,
        las = 1,
        ylim = c(0, max(TDF_provincia$ni) * 1.2))

# Gráfica Nº3: Frecuencia relativa
barplot(TDF_provincia$hi,
        main = "Gráfica Nº3: Porcentaje por Región",
        xlab = "Región",
        ylab = "Porcentaje (%)",
        col = "steelblue",
        names.arg = TDF_provincia$provincia,
        cex.names = 0.8,
        las = 1)

# Gráfica Nº4: Frecuencia relativa escala completa
barplot(TDF_provincia$hi,
        main = "Gráfica Nº4: Porcentaje por Región (Escala Completa)",
        xlab = "Región",
        ylab = "Porcentaje (%)",
        col = "steelblue",
        names.arg = TDF_provincia$provincia,
        cex.names = 0.8,
        las = 1,
        ylim = c(0, 100))

# Gráfico circular
par(mar = c(4, 4, 4, 8))

colores <- rainbow(length(TDF_provincia$hi))

pie(TDF_provincia$hi,
    col = colores,
    main = "Distribución por Región de la Provincia",
    labels = NA)

legend("right",
       legend = paste(TDF_provincia$provincia, TDF_provincia$hi, "%"),
       fill = colores,
       title = "REGIONES",
       bty = "o",
       xpd = TRUE,
       inset = c(-0.25, 0))

INDICADORES ESTADISTICOS

# Moda
moda_provincia <- TDF_provincia[TDF_provincia$ni == max(TDF_provincia$ni), ]
moda_provincia
##   provincia  ni hi
## 2    Centro 978 39
# Mediana
TDF_provincia <- TDF_provincia %>%
  mutate(Ni = cumsum(ni))

N <- sum(TDF_provincia$ni)

mediana_provincia <- TDF_provincia %>%
  filter(Ni >= N/2) %>%
  slice(1)

mediana_provincia
##   provincia  ni hi   Ni
## 1    Centro 978 39 1892

Conclución

"La variable condados presenta como valor más frecuente la región Centro. Esto indica una mayor concentración de actividades mineras en los estados centrales de Estados Unidos, incrementando el potencial de exploración y explotación en dicha zona."
## [1] "La variable condados presenta como valor más frecuente la región Centro. Esto indica una mayor concentración de actividades mineras en los estados centrales de Estados Unidos, incrementando el potencial de exploración y explotación en dicha zona."