ANÁLISIS ESTADÍSTICO

CARGA DE DATOS Y LIBRERÍAS

CARGA DE DATOS

# CARGA DE DATOS

library(readxl)

datos <- read_excel("D:/dataset_variables_discretas_mineria.xlsx")


# CARGA DE LIBRERÍAS

library(gt)
library(dplyr)
library(knitr)
library(e1071)

SELECCIÓN DE LA VARIABLE

disc <- as.integer(datos$`Número de Minerales Identificados`)
disc <- na.omit(disc)

TABLA DE DISTRIBUCION DE CANTIDAD

# 4) Frecuencias simples
ni <- table(disc)

total <- sum(ni)

hi <- round(as.numeric(ni) / total * 100, 2) 

# 5) Acumuladas ascendente
Ni_Asc <- cumsum(ni)
Hi_Asc <- cumsum(hi)

# 6) Acumuladas descendente
Ni_Desc <- rev(cumsum(rev(ni)))
Hi_Desc <- rev(cumsum(rev(hi)))

# 7) Tabla final 
tabla_final <- data.frame(
  Numero_Minerales = as.numeric(names(ni)),
  ni = as.numeric(ni),
  hi = hi,
  Ni_Asc = as.numeric(Ni_Asc),
  Hi_Asc = round(Hi_Asc, 2),
  Ni_Desc = as.numeric(Ni_Desc),
  Hi_Desc = round(Hi_Desc, 2)
)

# Verificar que las proporciones sumen 100
sum(tabla_final$hi) 
## [1] 100
tail(tabla_final$Hi_Asc,1)  
## [1] 100
head(tabla_final$Hi_Desc,1) 
## [1] 100
# Calcular sumatorias simples
suma_ni <- sum(tabla_final$ni)
suma_hi <- sum(tabla_final$hi)

# Crear fila total
fila_total <- data.frame(
  Numero_Minerales = "TOTAL",
  ni = suma_ni,
  hi = round((suma_hi),2),
  Ni_Asc = "-",
  Hi_Asc = "-",
  Ni_Desc = "-",
  Hi_Desc = "-"
)

# Unir a la tabla
tabla_final <- rbind(tabla_final, fila_total)

tabla_final
##    Numero_Minerales   ni     hi Ni_Asc Hi_Asc Ni_Desc Hi_Desc
## 1                 2  259  10.36    259  10.36    2500     100
## 2                 3  278  11.12    537  21.48    2241   89.64
## 3                 4  299  11.96    836  33.44    1963   78.52
## 4                 5  266  10.64   1102  44.08    1664   66.56
## 5                 6  271  10.84   1373  54.92    1398   55.92
## 6                 7  263  10.52   1636  65.44    1127   45.08
## 7                 8  308  12.32   1944  77.76     864   34.56
## 8                 9  280  11.20   2224  88.96     556   22.24
## 9                10  276  11.04   2500    100     276   11.04
## 10            TOTAL 2500 100.00      -      -       -       -
# TABLA GT
TablaDisc <- tabla_final %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nº. 1*"),
    subtitle = md("**Tabla de distribución de la cantidad de minerales identificados en las muestras mineras**")
  ) %>%
  tab_source_note(
    source_note = md("__Autor: Grupo 2__")
  ) %>%
  tab_options(
    table.border.top.color = "black",
    table.border.bottom.color = "black",
    table.border.top.style = "solid",
    table.border.bottom.style = "solid",
    column_labels.border.top.color = "black",
    column_labels.border.bottom.color = "black",
    column_labels.border.bottom.width = px(2),
    row.striping.include_table_body = TRUE,
    heading.border.bottom.color = "black",
    heading.border.bottom.width = px(2),
    table_body.hlines.color = "gray",
    table_body.border.bottom.color = "black"
  ) %>%
  tab_style(
    style = cell_text(weight = "bold"),
    locations = cells_body(
      rows = Numero_Minerales == "TOTAL"   
    )
  )

TablaDisc
Tabla Nº. 1
Tabla de distribución de la cantidad de minerales identificados en las muestras mineras
Numero_Minerales ni hi Ni_Asc Hi_Asc Ni_Desc Hi_Desc
2 259 10.36 259 10.36 2500 100
3 278 11.12 537 21.48 2241 89.64
4 299 11.96 836 33.44 1963 78.52
5 266 10.64 1102 44.08 1664 66.56
6 271 10.84 1373 54.92 1398 55.92
7 263 10.52 1636 65.44 1127 45.08
8 308 12.32 1944 77.76 864 34.56
9 280 11.20 2224 88.96 556 22.24
10 276 11.04 2500 100 276 11.04
TOTAL 2500 100.00 - - - -
Autor: Grupo 2

Gráficas de distribución de cantidad

# Histograma de cantidad

freq <- table(disc)

barplot(freq,
        main="Grafica Nº1: Distribución de cantidad del número de minerales
identificados en depósitos minerales de Estados Unidos",
        col="gray",
        ylab="Cantidad",
        xlab="Número de minerales identificados",
        cex.names=0.8)

# Histograma de cantidad

freq <- table(disc)

barplot(freq,
        main="Grafica Nº2: Distribución de cantidad del número de minerales
identificados en depósitos minerales de Estados Unidos",
        col="gray",
        xlab="Número de minerales identificados",
        ylab="Cantidad",
        ylim=c(0,800),
        cex.names=0.8)

# Histograma de cantidad en porcentaje

names.arg = tabla_final$Numero_Minerales[
    tabla_final$Numero_Minerales != "TOTAL"
]

# Datos para la gráfica

hi_plot <- tabla_final$hi[1:(nrow(tabla_final)-1)]

etiquetas_x <- tabla_final$Numero_Minerales[
  1:(nrow(tabla_final)-1)
]

barplot(
  hi_plot,
  main = "Grafica Nº3: Distribución de cantidad en porcentaje del número
de minerales identificados en depósitos minerales de Estados Unidos",
  col = "gray",
  space = 0.3,
  las = 1,
  xlab = "Número de minerales identificados",
  ylab = "Porcentaje",
  names.arg = etiquetas_x,
  cex.names = 0.8
)

# Histograma de cantidad en porcentaje

# Filtrar los datos SIN la fila TOTAL
# Gráfica de cantidad en porcentaje

hi_plot <- tabla_final$hi[1:(nrow(tabla_final) - 1)]

etiquetas_x <- tabla_final$Numero_Minerales[
  1:(nrow(tabla_final) - 1)
]

barplot(
  hi_plot,
  main = "Gráfica Nº4: Distribución porcentual del número
de minerales identificados en depósitos minerales
de Estados Unidos",
  col = "gray",
  space = 0.3,
  las = 1,
  xlab = "Número de minerales identificados",
  ylab = "Porcentaje (%)",
  names.arg = etiquetas_x,
  ylim = c(0, 100),
  cex.names = 0.8
)

# Ojivas combinadas Ni

x_intervalos <- as.numeric(names(ni))

plot(x = x_intervalos,
     y = Ni_Asc,
     type = "p",
     col = "blue",
     main = "Grafica Nº5: Ojiva combinada del número de minerales identificados\n(Ni)",
     xlab = "Número de minerales identificados",
     ylab = "Cantidad acumulada (Ni)",
     las = 2
)

lines(x = x_intervalos,
      y = Ni_Desc,
      type = "p",
      col = "red")

# Ojivas combinadas Hi

plot(x = x_intervalos,
     y = Hi_Asc,
     type = "p",
     col = "blue",
     main = "Grafica Nº6: Ojiva combinada del número de minerales identificados\n(Hi)",
     xlab = "Número de minerales identificados",
     ylab = "Porcentaje acumulado (Hi)",
     las = 2,
     ylim = c(0, 100)
)

lines(x = x_intervalos,
      y = Hi_Desc,
      type = "p",
      col = "black")

# DIAGRAMA DE CAJA

boxplot(disc,
        horizontal = TRUE,
        col = "blue",
        main = "Gráfica Nº7: Distribución de cantidad del número de minerales
     identificados en depósitos minerales de Estados Unidos",
        xlab = "Número de minerales identificados")

Indicadores Estadisticos

# POSICION

#MEDIA ARITMETICA
x<-mean(disc)
x
## [1] 6.0356
# MODA
Mo <- as.numeric(names(which.max(table(disc))))
Mo
## [1] 8
#MEDIANA ARITMETICA

ri<-min(disc)
rs<-max(disc)
Me<-median(disc)
Me
## [1] 6
# DISPERSION

#DESVIACIÓN ESTÁNDAR
sd<-sd(disc)
sd
## [1] 2.572349
#COEFICIENTE DE VARIACIÓN
CV <- ((sd / x) * 100)
CV
## [1] 42.61961
# FORMA

#COEFICIENTE DE ASIMETRÍA
As<-skewness(disc)
As
## [1] -0.01304585
#COEFICIENTE DE CURTOSIS
K<-kurtosis(disc)
K
## [1] -1.242733
# TABLA DE INDICADORES ESTADISTICOS

Variable<-c("Número de Minerales Identificados")

TablaIndicadores<-data.frame(
  Variable,
  ri,
  rs,
  round(x,2),
  Me,
  round(sd,2), 
  round(CV,2), 
  round(As,2),
  round(K,2)
)

colnames(TablaIndicadores)<-c(
  "Variable",
  "minimo",
  "máximo",
  "x",
  "Me",
  "sd",
  "Cv (%)",
  "As",
  "K"
)

kable(
  TablaIndicadores,
  format = "markdown",
  caption = "Tabla N°3. Indicadores estadísticos de la variable número de minerales identificados"
)
Tabla N°3. Indicadores estadísticos de la variable número de minerales identificados
Variable minimo máximo x Me sd Cv (%) As K
Número de Minerales Identificados 2 10 6.04 6 2.57 42.62 -0.01 -1.24

Conclusión

La variable número de minerales identificados presenta valores entre 2 y 10, con una concentración en torno a la mediana de 6 minerales. La desviación estándar de 2.57 y el coeficiente de variación de 42.62% indican una distribución heterogénea. La asimetría cercana a cero evidencia una distribución equilibrada, lo que resulta favorable para la caracterización mineralógica, ya que refleja diversidad y estabilidad en los minerales identificados.