ANÁLISIS ESTADÍSTICO

CARGA DE DATOS Y LIBRERÍAS

CARGA DE DATOS

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

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

ASIGNACION DE VARIABLES

ASIGNACION DE VARIABLES

df_muestreo <- data.frame(muestreo = toupper(trimws(datos$SAMPLING_METHOD)))

df_muestreo$muestreo <- case_when(
  toupper(df_muestreo$muestreo) == "DIAMOND CORE DRILLING" ~ "Diamond Core Drilling",
  toupper(df_muestreo$muestreo) == "REVERSE CIRCULATION (RC)" ~ "Reverse Circulation (RC)",
  toupper(df_muestreo$muestreo) == "CHANNEL SAMPLING" ~ "Channel Sampling",
  toupper(df_muestreo$muestreo) == "CHIP SAMPLING" ~ "Chip Sampling",
  toupper(df_muestreo$muestreo) == "COMPOSITE SAMPLING" ~ "Composite Sampling",
  toupper(df_muestreo$muestreo) == "SYSTEMATIC SAMPLING" ~ "Systematic Sampling",
  toupper(df_muestreo$muestreo) == "RANDOM SAMPLING" ~ "Random Sampling",
  toupper(df_muestreo$muestreo) == "STRATIFIED SAMPLING" ~ "Stratified Sampling",
  TRUE ~ NA_character_
)

orden_muestreo <- c(
  "Diamond Core Drilling",
  "Reverse Circulation (RC)",
  "Channel Sampling",
  "Chip Sampling",
  "Composite Sampling",
  "Systematic Sampling",
  "Random Sampling",
  "Stratified Sampling"
)

TABLA DE DISTRIBUCIÓN DE CANTIDAD

TABLA DE DISTRIBUCION DE CANTIDAD

df_muestreo$muestreo <- factor(
  df_muestreo$muestreo,
  levels = orden_muestreo,
  ordered = TRUE
)


TDF_muestreo <- df_muestreo %>%
  count(muestreo, name = "ni") %>%
  arrange(muestreo)

# Calculamos los porcentajes redondeados
TDF_muestreo <- TDF_muestreo %>%
  mutate(hi = round(ni / sum(ni) * 100, 0))

# Ajuste por redondeo: la diferencia se le asigna a la categoría con mayor frecuencia
diferencia <- 100 - sum(TDF_muestreo$hi)
if (diferencia != 0) {
  pos_max <- choosing_row <- which.max(TDF_muestreo$ni)
  TDF_muestreo$hi[pos_max] <- TDF_muestreo$hi[pos_max] + diferencia
}

# Tabla 
tabla_muestreo <- TDF_muestreo %>%
  gt() %>%
  tab_header(
    title = "Tabla N° 1",
    subtitle = "Distribución del Método de Muestreo"
  ) %>%
  grand_summary_rows(
    columns = c(ni, hi),
    fns = list(Total = ~sum(., na.rm = TRUE)),
    fmt = list(~fmt_number(., decimals = 0))
  )

tabla_muestreo
Tabla N° 1
Distribución del Método de Muestreo
muestreo ni hi
Diamond Core Drilling 878 36
Reverse Circulation (RC) 608 24
Channel Sampling 276 11
Chip Sampling 184 7
Composite Sampling 169 7
Systematic Sampling 205 8
Random Sampling 71 3
Stratified Sampling 109 4
Total 2,500 100
# Agregamos fila TOTAL
tabla_final_muestreo <- TDF_muestreo %>%
  mutate(
    muestreo = as.character(muestreo)
  )

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

# TABLA ESQUELETO
tabla_muestreo_gt <- tabla_final_muestreo %>%

  gt() %>%

  tab_header(
    title = md("**Tabla Nº2**"),
    subtitle = md("Distribución ordinal del método de muestreo")
  ) %>%

  cols_label(
    muestreo = "Método de Muestreo",
    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 = muestreo == "TOTAL"
    )
  ) %>%

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

tabla_muestreo_gt
Tabla Nº2
Distribución ordinal del método de muestreo
Método de Muestreo Frecuencia Porcentaje (%)
Diamond Core Drilling 878 36
Reverse Circulation (RC) 608 24
Channel Sampling 276 11
Chip Sampling 184 7
Composite Sampling 169 7
Systematic Sampling 205 8
Random Sampling 71 3
Stratified Sampling 109 4
TOTAL 2,500 100
Autor: Grupo 2

GRÁFICAS DE DISTRIBUCIÓN DE CANTIDAD

# Gráfica Nº1: Frecuencia absoluta
barplot(TDF_muestreo$ni,
        main = "Gráfica Nº1: Frecuencia del Método de Muestreo",
        xlab = "Método de Muestreo",
        ylab = "Cantidad (ni)",
        col = "steelblue",
        names.arg = TDF_muestreo$muestreo,
        cex.names = 0.6,
        las = 2) # las = 2 para rotar nombres si son largos

# Gráfica Nº2: Frecuencia absoluta ajustada
barplot(TDF_muestreo$ni,
        main = "Gráfica Nº2: Frecuencia del Método de Muestreo (Escala Ajustada)",
        xlab = "Método de Muestreo",
        ylab = "Cantidad (ni)",
        col = "steelblue",
        names.arg = TDF_muestreo$muestreo,
        cex.names = 0.6,
        las = 2,
        ylim = c(0, max(TDF_muestreo$ni) * 1.2))

# Gráfica Nº3: Frecuencia relativa
barplot(TDF_muestreo$hi,
        main = "Gráfica Nº3: Porcentaje del Método de Muestreo",
        xlab = "Método de Muestreo",
        ylab = "Porcentaje (%)",
        col = "steelblue",
        names.arg = TDF_muestreo$muestreo,
        cex.names = 0.6,
        las = 2)

# Gráfica Nº4: Frecuencia relativa escala completa
barplot(TDF_muestreo$hi,
        main = "Gráfica Nº4: Porcentaje del Método de Muestreo (Escala Completa)",
        xlab = "Método de Muestreo",
        ylab = "Porcentaje (%)",
        col = "steelblue",
        names.arg = TDF_muestreo$muestreo,
        cex.names = 0.6,
        las = 2,
        ylim = c(0, 100))

# Gráfico circular
par(mar = c(4, 4, 4, 10)) # Margen derecho más amplio para leyenda larga

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

pie(TDF_muestreo$hi,
    col = colores,
    main = "Distribución del Método de Muestreo",
    labels = NA)

legend("right",
       legend = paste(TDF_muestreo$muestreo, TDF_muestreo$hi, "%"),
       fill = colores,
       title = "MÉTODOS",
       bty = "o",
       xpd = TRUE,
       inset = c(-0.46, 0))

INDICADORES ESTADISTICOS

# Moda
moda_muestreo <- TDF_muestreo[TDF_muestreo$ni == max(TDF_muestreo$ni), ]
moda_muestreo
##                muestreo  ni hi
## 1 Diamond Core Drilling 878 36
# Mediana
TDF_muestreo <- TDF_muestreo %>%
  mutate(Ni = cumsum(ni))

N <- sum(TDF_muestreo$ni)

mediana_muestreo <- TDF_muestreo %>%
  filter(Ni >= N/2) %>%
  slice(1)

mediana_muestreo
##                   muestreo  ni hi   Ni
## 1 Reverse Circulation (RC) 608 24 1486

Conclución

"La variable método de muestreo tiene como valor más frecuente Diamond Core Drilling. Lo cual resulta favorable para la exploración minera, ya que permite obtener muestras continuas y de alta precisión geológica."
## [1] "La variable método de muestreo tiene como valor más frecuente Diamond Core Drilling. Lo cual resulta favorable para la exploración minera, ya que permite obtener muestras continuas y de alta precisión geológica."