Variable Original: MINE_TYPE

Nombre Variable: TIPO_MINA

Tipo: Cualitativa Nominal

Escala: Nominal

Justificación de la variable: El tipo de mina es clave para el proyecto porque diferentes modalidades de explotación generan distintos niveles de emisiones. Identificar qué tipos predominan permite entender qué sectores mineros tienen mayor impacto ambiental en términos de CO2, NOx y CH4.


1 Carga y Preparación de los Datos

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

datos <- read.csv("~/Estudio/TERCER SEMESTRE/Estadistica/Dataset.csv",
                   sep = ";", stringsAsFactors = FALSE)

TIPO_MINA <- trimws(as.character(datos$MINE_TYPE))
TIPO_MINA <- TIPO_MINA[!is.na(TIPO_MINA) & TIPO_MINA != ""]
n <- length(TIPO_MINA)

cat("n validos :", n, "\n")
## n validos : 2922

2 Recodificación de Categorías

Se reemplazan los códigos numéricos de MINE_TYPE por etiquetas descriptivas.

etiquetas <- character(length(TIPO_MINA))

for (i in 1:length(TIPO_MINA)) {
  if (TIPO_MINA[i] == "1") {
    etiquetas[i] <- "1-Underground"
  } else if (TIPO_MINA[i] == "2") {
    etiquetas[i] <- "2-Surface"
  } else if (TIPO_MINA[i] == "3") {
    etiquetas[i] <- "3-Strip"
  } else if (TIPO_MINA[i] == "4") {
    etiquetas[i] <- "4-Auger"
  } else if (TIPO_MINA[i] == "5") {
    etiquetas[i] <- "5-Culm/Refuse"
  } else if (TIPO_MINA[i] == "6") {
    etiquetas[i] <- "6-Dredge"
  } else if (TIPO_MINA[i] == "10") {
    etiquetas[i] <- "10-In Situ"
  } else if (TIPO_MINA[i] == "11") {
    etiquetas[i] <- "11-Mill/Prep Plant"
  } else if (TIPO_MINA[i] == "12") {
    etiquetas[i] <- "12-Shops/Yards"
  } else {
    etiquetas[i] <- "Otro"
  }
}

3 Tabla de Distribución de Frecuencias

NOTA: al ser variable NOMINAL no se calculan frecuencias acumuladas (Ni/Hi), ya que las categorías no tienen un orden lógico entre sí.

TDF <- as.data.frame(table(etiquetas)) %>%
  rename(Tipo = etiquetas, ni = Freq) %>%
  arrange(desc(ni)) %>%
  mutate(hi = round(ni / sum(ni) * 100, 2))

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

# Fila total
TDF_total <- TDF %>%
  mutate(Tipo = as.character(Tipo)) %>%
  bind_rows(
    data.frame(Tipo = "TOTAL", ni = sum(TDF$ni), hi = sum(TDF$hi))
  )

TDF_total %>%
  gt() %>%
  tab_header(
    title    = md("**Tabla N°1**"),
    subtitle = "Distribución Nominal por Tipo de Mina"
  ) %>%
  cols_label(Tipo = "Tipo de Mina", 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 = Tipo == "TOTAL")
  ) %>%
  tab_source_note(source_note = md("Autor: Grupo 4 - Minas"))
Tabla N°1
Distribución Nominal por Tipo de Mina
Tipo de Mina Frecuencia Porcentaje (%)
12-Shops/Yards 964 33
11-Mill/Prep Plant 757 26
6-Dredge 634 22
5-Culm/Refuse 366 13
4-Auger 104 4
1-Underground 69 2
2-Surface 19 1
10-In Situ 5 0
3-Strip 4 0
TOTAL 2,922 100
Autor: Grupo 4 - Minas

4 Diagramas de Barras

par(mar = c(10, 5, 4, 2))
barplot(TDF_graf$ni,
        names.arg = TDF_graf$Tipo,
        main = "Gráfica N°1: Distribución de cantidad por tipo de mina\nen instalaciones mineras de Estados Unidos",
        xlab = "", ylab = "Cantidad (ni)",
        col = "steelblue",
        las = 2, cex.names = 0.8)

par(mar = c(10, 5, 4, 2))
barplot(TDF_graf$hi,
        names.arg = TDF_graf$Tipo,
        main = "Gráfica N°2: Distribución de cantidad en porcentaje\npor tipo de mina en instalaciones mineras de Estados Unidos",
        xlab = "", ylab = "Porcentaje (%)",
        col = "steelblue",
        las = 2, cex.names = 0.8,
        ylim = c(0, max(TDF_graf$hi) * 1.2))

5 Diagrama Circular

par(mar = c(4, 4, 4, 10), xpd = TRUE)
colores <- rainbow(nrow(TDF_graf))
pie(TDF_graf$hi,
    col = colores,
    main = "Gráfica N°3: Distribución de cantidad en porcentaje\npor tipo de mina",
    labels = NA)
legend("right",
       legend = paste(TDF_graf$Tipo, TDF_graf$hi, "%"),
       fill = colores,
       title = "TIPO DE MINA",
       bty = "o", xpd = TRUE, inset = c(-0.35, 0), cex = 0.7)

par(xpd = FALSE)

6 Indicadores Estadísticos

moda_tipo_mina <- TDF_graf[TDF_graf$ni == max(TDF_graf$ni), ]
moda_tipo_mina
##             Tipo  ni    hi
## 1 12-Shops/Yards 964 32.98

7 Conclusión

conclusion <- sprintf(
  "La variable tipo de mina presenta como valor más frecuente la categoría '%s', con %d instalaciones (%.0f%% del total de %d registros válidos). Esta distribución es relevante para el proyecto porque el tipo de mina predominante determina el nivel de emisiones generadas: las operaciones de superficie y plantas de procesamiento suelen tener mayor impacto sobre las emisiones de CO2, NOx y CH4 reportadas por estado en 2018, lo que refuerza la hipótesis de correlación entre el tipo de actividad minera y el volumen de gases emitidos."
  , moda_tipo_mina$Tipo[1], moda_tipo_mina$ni[1], moda_tipo_mina$hi[1], n
)
print(conclusion)
## [1] "La variable tipo de mina presenta como valor más frecuente la categoría '12-Shops/Yards', con 964 instalaciones (33% del total de 2922 registros válidos). Esta distribución es relevante para el proyecto porque el tipo de mina predominante determina el nivel de emisiones generadas: las operaciones de superficie y plantas de procesamiento suelen tener mayor impacto sobre las emisiones de CO2, NOx y CH4 reportadas por estado en 2018, lo que refuerza la hipótesis de correlación entre el tipo de actividad minera y el volumen de gases emitidos."