# CARGA DE DATOS
library(readxl)
library(knitr)
datos <- read_excel("D:/dataset_variables_discretas_mineria.xlsx")
# LIMPIEZA DE LA VARIABLE
frecuencia <- as.numeric(datos$`Frecuencia de muestras por depósito`)
frecuencia <- na.omit(frecuencia)
# GRAFICA DE DISTRIBUCIÓN GENERAL
histograma_frec <- hist(frecuencia,
main = "Grafica Nº1: Distribución de cantidad de la frecuencia de muestras por depósito",
xlab = "Frecuencia de muestras por depósito",
ylab = "Cantidad",
col = "gray")#====================================================================
# MODELO NORMAL 1
#====================================================================
# PARTICIÓN DE LA VARIABLE
frec_1 <- frecuencia[frecuencia < 60]
# HISTOGRAMA
Histograma_1 <- hist(frec_1,
freq = FALSE,
breaks = seq(0, 60, by = 10),
main = "Grafica Nº2: Comparación de la realidad con el modelo de probabilidad
normal del grupo 1 de frecuencia de muestras por depósito",
ylab = "Densidad de probabilidad",
xlab = "Frecuencia de muestras por depósito",
col = "lightgray",
border = "black")
# CALCULO DE PARAMETROS
h1 <- length(Histograma_1$counts)
u_1 <- mean(frec_1)
sigma_1 <- sd(frec_1)
x <- seq(min(frec_1), max(frec_1), 0.01)
curve(dnorm(x, u_1, sigma_1),
type = "l",
col = "blue",
add = TRUE)## [1] 1288
## [1] 3 73 176 313 495 228
# PROBABILIDAD
P1 <- c(0)
for (i in 1:h1) {
P1[i] <- (pnorm(Histograma_1$breaks[i+1],u_1,sigma_1)-
pnorm(Histograma_1$breaks[i],u_1,sigma_1))
}
# FRECUENCIA ESPERADA
Fe_1 <- P1*n1
Fe_1## [1] 7.039829 51.156280 192.823066 378.147046 386.499083 205.895722
## [1] 0.2329193 5.6677019 13.6645963 24.3012422 38.4316770 17.7018634
## [1] 0.5465706 3.9717609 14.9707349 29.3592427 30.0076928 15.9856927
# CORRELACIÓN
plot(Fo_1,
Fe_1,
main="Grafica Nº3: Correlación de frecuencias observadas y esperadas
del grupo 1",
xlab="Frecuencia Observada (%)",
ylab="Frecuencia Esperada (%)",
col="blue3")
abline(a = 0,
b = 1,
col = "red",
lwd = 2)## [1] 94.60803
## [1] 5
## [1] 4.438589
## [1] 11.0705
# TABLA RESUMEN
Variable <- c("Frecuencia Grupo 1")
tabla_resumen_1 <- data.frame(Variable,
round(Correlacion_1,2),
round(x2_1,2),
round(umbral_aceptacion_1,2))
colnames(tabla_resumen_1) <- c("Variable",
"Test Pearson (%)",
"Chi Cuadrado",
"Umbral de aceptación")
kable(tabla_resumen_1,
format = "markdown",
caption = "Tabla resumen grupo 1")| Variable | Test Pearson (%) | Chi Cuadrado | Umbral de aceptación |
|---|---|---|---|
| Frecuencia Grupo 1 | 94.61 | 4.44 | 11.07 |
#====================================================================
# MODELO NORMAL 2
#====================================================================
frec_2 <- frecuencia[frecuencia >= 60 & frecuencia < 100]
Histograma_2 <- hist(frec_2,
freq = FALSE,
breaks = seq(60, 100, by = 10),
main = "Grafica Nº4: Comparación de la realidad con el modelo
normal del grupo 2",
ylab = "Densidad de probabilidad",
xlab = "Frecuencia de muestras por depósito",
col = "lightgray",
border = "black")
h2 <- length(Histograma_2$counts)
u_2 <- mean(frec_2)
sigma_2 <- sd(frec_2)
x <- seq(min(frec_2), max(frec_2), 0.01)
curve(dnorm(x, u_2, sigma_2),
type = "l",
col = "blue",
add = TRUE)## [1] 722
## [1] 66 216 346 94
P2 <- c(0)
for (i in 1:h2) {
P2[i] <- (pnorm(Histograma_2$breaks[i+1],u_2,sigma_2)-
pnorm(Histograma_2$breaks[i],u_2,sigma_2))
}
Fe_2 <- P2*n2
Fe_2## [1] 72.60059 239.89005 275.56014 110.22265
## [1] 9.141274 29.916898 47.922438 13.019391
## [1] 10.05548 33.22577 38.16622 15.26629
plot(Fo_2,
Fe_2,
main="Grafica Nº5: Correlación de frecuencias observadas y esperadas
del grupo 2",
xlab="Frecuencia Observada (%)",
ylab="Frecuencia Esperada (%)",
col="blue3")
abline(a = 0,
b = 1,
col = "red",
lwd = 2)## [1] 95.98361
## [1] 3
## [1] 3.237264
## [1] 7.814728
Variable <- c("Frecuencia Grupo 2")
tabla_resumen_2 <- data.frame(Variable,
round(Correlacion_2,2),
round(x2_2,2),
round(umbral_aceptacion_2,2))
colnames(tabla_resumen_2) <- c("Variable",
"Test Pearson (%)",
"Chi Cuadrado",
"Umbral de aceptación")
kable(tabla_resumen_2,
format = "markdown",
caption = "Tabla resumen grupo 2")| Variable | Test Pearson (%) | Chi Cuadrado | Umbral de aceptación |
|---|---|---|---|
| Frecuencia Grupo 2 | 95.98 | 3.24 | 7.81 |
#====================================================================
# MODELO NORMAL 3
#====================================================================
frec_3 <- frecuencia[frecuencia >= 100]
Histograma_3 <- hist(frec_3,
freq = FALSE,
breaks = seq(100, 150, by = 10),
main = "Grafica Nº6: Comparación de la realidad con el modelo
normal del grupo 3",
ylab = "Densidad de probabilidad",
xlab = "Frecuencia de muestras por depósito",
col = "lightgray",
border = "black")
h3 <- length(Histograma_3$counts)
u_3 <- mean(frec_3)
sigma_3 <- sd(frec_3)
x <- seq(min(frec_3), max(frec_3), 0.01)
curve(dnorm(x, u_3, sigma_3),
type = "l",
col = "blue",
add = TRUE)## [1] 490
## [1] 0 227 125 138 0
P3 <- c(0)
for (i in 1:h3) {
P3[i] <- (pnorm(Histograma_3$breaks[i+1],u_3,sigma_3)-
pnorm(Histograma_3$breaks[i],u_3,sigma_3))
}
Fe_3 <- P3*n3
Fe_3## [1] 42.45659 134.58508 179.60018 101.08071 23.90743
## [1] 0.00000 46.32653 25.51020 28.16327 0.00000
## [1] 8.664609 27.466342 36.653098 20.628717 4.879068
plot(Fo_3,
Fe_3,
main="Grafica Nº7: Correlación de frecuencias observadas y esperadas
del grupo 3",
xlab="Frecuencia Observada (%)",
ylab="Frecuencia Esperada (%)",
col="blue3")
abline(a = 0,
b = 1,
col = "red",
lwd = 2)## [1] 78.53072
## [1] 4
## [1] 32.63382
## [1] 9.487729
Variable <- c("Frecuencia Grupo 3")
tabla_resumen_3 <- data.frame(Variable,
round(Correlacion_3,2),
round(x2_3,2),
round(umbral_aceptacion_3,2))
colnames(tabla_resumen_3) <- c("Variable",
"Test Pearson (%)",
"Chi Cuadrado",
"Umbral de aceptación")
kable(tabla_resumen_3,
format = "markdown",
caption = "Tabla resumen grupo 3")| Variable | Test Pearson (%) | Chi Cuadrado | Umbral de aceptación |
|---|---|---|---|
| Frecuencia Grupo 3 | 78.53 | 32.63 | 9.49 |
La frecuencia de muestras por depósito presenta una distribución multimodal, evidenciando la existencia de al menos tres agrupamientos principales dentro del conjunto de datos.
Debido a ello, la variable fue segmentada en tres subconjuntos con el objetivo de representar adecuadamente el comportamiento estadístico interno de cada grupo mediante modelos normales independientes.
Los resultados obtenidos muestran que cada subconjunto presenta un ajuste razonable al modelo de probabilidad normal, permitiendo aplicar herramientas de inferencia estadística para el análisis de frecuencias de muestreo en depósitos minerales.