ANÁLISIS ESTADÍSTICO

CARGA DE DATOS Y LIBRERÍAS

CARGA DE DATOS

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

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

df_deposito <- data.frame(deposito = toupper(trimws(datos$Deposit_Type)))

ASIGNACION DE VARIABLES

ASIGNACION DE VARIABLES

df_deposito$deposito <- case_when(
  # Asignación jerárquica de los depósitos originales
  toupper(df_deposito$deposito) %in% c("EPITHERMAL") ~ "Bajo",
  toupper(df_deposito$deposito) %in% c("PORPHYRY", "VMS") ~ "Medio",
  toupper(df_deposito$deposito) %in% c("SEDIMENT-HOSTED", "SKARN") ~ "Alto",
  TRUE ~ NA_character_
)

# Definición del orden lógico ascendente para volverla ordinal
orden_deposit <- c(
  "Bajo",
  "Medio",
  "Alto"
)

df_deposito$deposito <- factor(
  df_deposito$deposito,
  levels = orden_deposit,
  ordered = TRUE
)

TABLA DE DISTRIBUCIÓN DE CANTIDAD

TABLA DE DISTRIBUCION DE CANTIDAD

TDF_deposito <- df_deposito %>%
  count(deposito, name = "ni") %>%
  arrange(deposito)

# Cálculo de frecuencias relativas porcentuales
TDF_deposito <- TDF_deposito %>%
  mutate(hi = round(ni / sum(ni) * 100, 0))

# Ajuste matemático para corregir errores de redondeo y forzar el 100%
diferencia <- 100 - sum(TDF_deposito$hi, na.rm = TRUE)
if (diferencia != 0 & nrow(TDF_deposito) > 0) {
  pos_max <- which.max(TDF_deposito$ni)
  TDF_deposito$hi[pos_max] <- TDF_deposito$hi[pos_max] + diferencia
}

# Creación de la tabla con sumatoria total en el pie
tabla_deposito <- TDF_deposito %>%
  gt() %>%
  tab_header(
    title = "Tabla N° 1",
    subtitle = "Distribución del Tipo de Depósito"
  ) %>%
  grand_summary_rows(
    columns = c(ni, hi),
    fns = list(Total = ~sum(., na.rm = TRUE)),
    fmt = list(~fmt_number(., decimals = 0))
  )

tabla_deposito
Tabla N° 1
Distribución del Tipo de Depósito
deposito ni hi
Bajo 497 20
Medio 1007 40
Alto 996 40
Total 2,500 100
# Agregamos fila TOTAL
tabla_final_deposito <- TDF_deposito %>%
  mutate(
    deposito = as.character(deposito)
  )

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

# TABLA ESQUELETO
tabla_deposito_gt <- tabla_final_deposito %>%

  gt() %>%

  tab_header(
    title = md("**Tabla Nº2**"),
    subtitle = md("Distribución ordinal del tipo de depósito mineral")
  ) %>%

  cols_label(
    deposito = "Nivel de Depósito",
    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 = deposito == "TOTAL"
    )
  ) %>%

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

tabla_deposito_gt
Tabla Nº2
Distribución ordinal del tipo de depósito mineral
Nivel de Depósito Frecuencia Porcentaje (%)
Bajo 497 20
Medio 1,007 40
Alto 996 40
TOTAL 2,500 100
Autor: Grupo 2

GRÁFICAS DE DISTRIBUCIÓN DE CANTIDAD

# Gráfica Nº1: Frecuencia absoluta
barplot(TDF_deposito$ni,
        main = "Gráfica Nº1: Distribución de cantidad del tipo de deposito 
        en depósitos minerales de Estados Unidos",
        xlab = "Nivel de Depósito",
        ylab = "Cantidad (ni)",
        col = "steelblue",
        names.arg = TDF_deposito$deposito,
        cex.names = 0.8,
        las = 1)

# Gráfica Nº2: Frecuencia absoluta ajustada
barplot(TDF_deposito$ni,
        main = "Gráfica Nº2: Distribución de cantidad del tipo de deposito 
        en depósitos minerales de Estados Unidos",
        xlab = "Nivel de Depósito",
        ylab = "Cantidad (ni)",
        col = "steelblue",
        names.arg = TDF_deposito$deposito,
        cex.names = 0.8,
        las = 1,
        ylim = c(0, max(TDF_deposito$ni) * 1.2))

# Gráfica Nº3: Frecuencia relativa
barplot(TDF_deposito$hi,
        main = "Gráfica Nº3: Distribución de cantidad en porcentaje del tipo 
        de deposito en depósitos minerales de Estados Unidos",
        xlab = "Nivel de Depósito",
        ylab = "Porcentaje (%)",
        col = "steelblue",
        names.arg = TDF_deposito$deposito,
        cex.names = 0.8,
        las = 1)

# Gráfica Nº4: Frecuencia relativa escala completa
barplot(TDF_deposito$hi,
        main = "Gráfica Nº4: Distribución de cantidad en porcentaje del tipo 
        de deposito en depósitos minerales de Estados Unidos",
        xlab = "Nivel de Depósito",
        ylab = "Porcentaje (%)",
        col = "steelblue",
        names.arg = TDF_deposito$deposito,
        cex.names = 0.8,
        las = 1,
        ylim = c(0, 100))

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

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

pie(TDF_deposito$hi,
    col = colores,
    main = "Gráfica Nº5: Distribución de cantidad en porcentaje del tipo 
        de deposito en depósitos minerales de Estados Unidos",
    labels = NA)

legend("right",
       legend = paste(TDF_deposito$deposito, TDF_deposito$hi, "%"),
       fill = colores,
       title = "NIVELES",
       bty = "o",
       xpd = TRUE,
       inset = c(-0.25, 0))

INDICADORES ESTADISTICOS

# Moda
moda_deposito <- TDF_deposito[TDF_deposito$ni == max(TDF_deposito$ni), ]
moda_deposito
##   deposito   ni hi
## 2    Medio 1007 40
# Mediana
TDF_deposito <- TDF_deposito %>%
  mutate(Ni = cumsum(ni))

N <- sum(TDF_deposito$ni)

mediana_deposito <- TDF_deposito %>%
  filter(Ni >= N/2) %>%
  slice(1)

mediana_deposito
##   deposito   ni hi   Ni
## 1    Medio 1007 40 1504

Conclusión

#conclucion
"La variable tipo de depósito presenta categorías que fluctúan entre bajo, medio y alto, y sus valores se concentran en el nivel medio. Lo cual resulta favorable para la actividad minera, ya que indica una presencia moderada de depósitos con potencial económico y viabilidad de explotación."
## [1] "La variable tipo de depósito presenta categorías que fluctúan entre bajo, medio y alto, y sus valores se concentran en el nivel medio. Lo cual resulta favorable para la actividad minera, ya que indica una presencia moderada de depósitos con potencial económico y viabilidad de explotación."