# cargar librerías
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.5.2
##
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.5.2
library(gt)
## Warning: package 'gt' was built under R version 4.5.2
library(knitr)
## Warning: package 'knitr' was built under R version 4.5.2
library(e1071)
## Warning: package 'e1071' was built under R version 4.5.2
##
## Adjuntando el paquete: 'e1071'
## The following object is masked from 'package:ggplot2':
##
## element
#cargar datos
datos <- read.csv("C:/Users/aules/Documents/ESTADISTICA/tablas/Depositos_sulfuro.csv",
header = TRUE,
sep = ";",
dec = ".")
#Limpiamos la Variable
plomo <- as.numeric(datos$pbgrd)
plomo <- na.omit(plomo)
plomo <- subset(plomo, plomo >= 0)
# Calculamos el numero de datos
n <- length(plomo)
# Numero de clases con Sturges
k <- floor(1 + 3.3 * log10(n))
# Min, Max
minimo <- min(plomo)
maximo <- max(plomo)
#Rango
R <- maximo - minimo
# Amplitud
A <- R/k
# Límites inferior (Li) y superior (Ls)
Li <- round(seq(from = minimo, to = maximo-A, by = A), 2)
Ls <- round(seq(from = minimo+A, to = maximo, by = A), 2)
# Marca de clase
MC <- round((Li + Ls)/2, 2)
# Frecuencia Absoluta (ni)
ni <- numeric(length(Li))
for (i in 1:length(Li)) {ni[i] <- sum(plomo >= Li[i] & plomo < Ls[i])}
ni[length(Li)] <- sum(plomo >= Li[length(Li)] & plomo <= maximo)
# Frecuencia Relativa (hi)
hi <- (ni / sum(ni)) * 100
# Frecuencias Acumuladas
Niasc <- cumsum(ni)
Nidsc <- rev(cumsum(rev(ni)))
Hiasc <- round(cumsum(hi), 2)
Hidsc <- round(rev(cumsum(rev(hi))), 2)
# TABLA FINAL
TDFplomo <- round(data.frame(Li, Ls, MC, ni, hi , Niasc, Nidsc, Hiasc, Hidsc),2)
TDFplomo
## Li Ls MC ni hi Niasc Nidsc Hiasc Hidsc
## 1 0.0 65.2 32.6 761 87.67 761 868 87.67 100.00
## 2 65.2 130.4 97.8 53 6.11 814 107 93.78 12.33
## 3 130.4 195.6 163.0 15 1.73 829 54 95.51 6.22
## 4 195.6 260.8 228.2 12 1.38 841 39 96.89 4.49
## 5 260.8 326.0 293.4 11 1.27 852 27 98.16 3.11
## 6 326.0 391.2 358.6 7 0.81 859 16 98.96 1.84
## 7 391.2 456.4 423.8 1 0.12 860 9 99.08 1.04
## 8 456.4 521.6 489.0 3 0.35 863 8 99.42 0.92
## 9 521.6 586.8 554.2 3 0.35 866 5 99.77 0.58
## 10 586.8 652.0 619.4 2 0.23 868 2 100.00 0.23
Fila total de las sumas de ni y hi
# FILA TOTAL
fila_total <- data.frame(
Li = "TOTAL",
Ls = "",
MC = "",
ni = sum(TDFplomo$ni),
hi = round(sum(TDFplomo$hi),),
Niasc = "",
Nidsc = "",
Hiasc = "",
Hidsc = "")
#TABLA FINAL
TDFplomo_p <- rbind(TDFplomo, fila_total)
TABLA DE DISTRIBUCIÓN DE FRECUENCIA POR STURGES FINAL
#Crear Tabla
tablaplomo <- TDFplomo_p %>%
gt() %>%
tab_header(
title = md("*Tabla Nº:1*"),
subtitle = md("Distribución de Porcentaje en Peso de plomo en el mineral de los
Depósitos masivos de sulfuros volcanicos")
) %>%
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")
tablaplomo
| Tabla Nº:1 | ||||||||
| Distribución de Porcentaje en Peso de plomo en el mineral de los Depósitos masivos de sulfuros volcanicos | ||||||||
| Li | Ls | MC | ni | hi | Niasc | Nidsc | Hiasc | Hidsc |
|---|---|---|---|---|---|---|---|---|
| 0 | 65.2 | 32.6 | 761 | 87.67 | 761 | 868 | 87.67 | 100 |
| 65.2 | 130.4 | 97.8 | 53 | 6.11 | 814 | 107 | 93.78 | 12.33 |
| 130.4 | 195.6 | 163 | 15 | 1.73 | 829 | 54 | 95.51 | 6.22 |
| 195.6 | 260.8 | 228.2 | 12 | 1.38 | 841 | 39 | 96.89 | 4.49 |
| 260.8 | 326 | 293.4 | 11 | 1.27 | 852 | 27 | 98.16 | 3.11 |
| 326 | 391.2 | 358.6 | 7 | 0.81 | 859 | 16 | 98.96 | 1.84 |
| 391.2 | 456.4 | 423.8 | 1 | 0.12 | 860 | 9 | 99.08 | 1.04 |
| 456.4 | 521.6 | 489 | 3 | 0.35 | 863 | 8 | 99.42 | 0.92 |
| 521.6 | 586.8 | 554.2 | 3 | 0.35 | 866 | 5 | 99.77 | 0.58 |
| 586.8 | 652 | 619.4 | 2 | 0.23 | 868 | 2 | 100 | 0.23 |
| TOTAL | 868 | 100.00 | ||||||
| Autor: GRUPO 2 | ||||||||
#DEBIDO A QUE LA TABLA SE PRESENTA CON NUMEROS MUY DIFICILES SE DECIDIO SIMPLIFICAR LA TABLA
histograma_plomo<-hist(plomo,
main = "Gráfica Nº1: Distribución de frecuencia absoluta local de Porcentaje en Peso de Plomo en el mineral de los depositos
masivos de sulfuros volcanicos ",
xlab = "Porcentaje en Peso de Plomo en el mineral ($ p/p)",
ylab = "Cantidad",
col = "gray")
TABLA DE DISTRIBUCION DE FRECUENCIA SIMPLIFICADA
#LIMITE INFERIOR SIMPLIFICADA
lis <- histograma_plomo$breaks[-length(histograma_plomo$breaks)]
#LIMITE SUPERIOR SIMPLIFICADA
lss <- histograma_plomo$breaks[-1]
#MARCA DE CLASE
MC_f <- histograma_plomo$mids
# Frecuencia absoluta(ni)
ni_f <- histograma_plomo$counts
# Frecuencia relativa(hi)
hi_f <- (ni_f / sum(ni_f)) * 100
# Frecuencias Acumuladas
Niasc_f <- cumsum(ni_f)
Nidsc_f <- rev(cumsum(rev(ni_f)))
Hiasc_f <- round(cumsum(hi_f), 2)
Hidsc_f <- round(rev(cumsum(rev(hi_f))), 2)
# TABLA FINAL
TDFplomo_f <- round(data.frame(lis, lss, MC_f, ni_f, hi_f, Niasc_f, Nidsc_f, Hiasc_f, Hidsc_f),2)
TDFplomo_f
## lis lss MC_f ni_f hi_f Niasc_f Nidsc_f Hiasc_f Hidsc_f
## 1 0 50 25 744 85.71 744 868 85.71 100.00
## 2 50 100 75 52 5.99 796 124 91.71 14.29
## 3 100 150 125 24 2.76 820 72 94.47 8.29
## 4 150 200 175 10 1.15 830 48 95.62 5.53
## 5 200 250 225 11 1.27 841 38 96.89 4.38
## 6 250 300 275 2 0.23 843 27 97.12 3.11
## 7 300 350 325 11 1.27 854 25 98.39 2.88
## 8 350 400 375 5 0.58 859 14 98.96 1.61
## 9 400 450 425 1 0.12 860 9 99.08 1.04
## 10 450 500 475 1 0.12 861 8 99.19 0.92
## 11 500 550 525 3 0.35 864 7 99.54 0.81
## 12 550 600 575 3 0.35 867 4 99.88 0.46
## 13 600 650 625 0 0.00 867 1 99.88 0.12
## 14 650 700 675 1 0.12 868 1 100.00 0.12
Fila total de las sumas de ni y hi
# FILA TOTAL
fila_total_f <- data.frame(
lis = "TOTAL",
lss = "",
MC_f = "",
ni_f = sum(TDFplomo_f$ni_f),
hi_f = round(sum(TDFplomo_f$hi_f),),
Niasc_f = "",
Nidsc_f = "",
Hiasc_f = "",
Hidsc_f = "")
TDFplomo_t <- rbind(TDFplomo_f, fila_total_f)
TABLA DE DISTRIBUCION DE FRECUENCIA SIMPLIFICADA FINAL
tabla_plomo_f <- TDFplomo_t %>%
gt() %>%
tab_header(
title = md("*Tabla Nº:2*"),
subtitle = md("Distribución Porcentaje en Peso de Plomo en el mineral de los Depósitos
Masivos de Sulfuros volcánicos")
) %>%
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"
)
tabla_plomo_f
| Tabla Nº:2 | ||||||||
| Distribución Porcentaje en Peso de Plomo en el mineral de los Depósitos Masivos de Sulfuros volcánicos | ||||||||
| lis | lss | MC_f | ni_f | hi_f | Niasc_f | Nidsc_f | Hiasc_f | Hidsc_f |
|---|---|---|---|---|---|---|---|---|
| 0 | 50 | 25 | 744 | 85.71 | 744 | 868 | 85.71 | 100 |
| 50 | 100 | 75 | 52 | 5.99 | 796 | 124 | 91.71 | 14.29 |
| 100 | 150 | 125 | 24 | 2.76 | 820 | 72 | 94.47 | 8.29 |
| 150 | 200 | 175 | 10 | 1.15 | 830 | 48 | 95.62 | 5.53 |
| 200 | 250 | 225 | 11 | 1.27 | 841 | 38 | 96.89 | 4.38 |
| 250 | 300 | 275 | 2 | 0.23 | 843 | 27 | 97.12 | 3.11 |
| 300 | 350 | 325 | 11 | 1.27 | 854 | 25 | 98.39 | 2.88 |
| 350 | 400 | 375 | 5 | 0.58 | 859 | 14 | 98.96 | 1.61 |
| 400 | 450 | 425 | 1 | 0.12 | 860 | 9 | 99.08 | 1.04 |
| 450 | 500 | 475 | 1 | 0.12 | 861 | 8 | 99.19 | 0.92 |
| 500 | 550 | 525 | 3 | 0.35 | 864 | 7 | 99.54 | 0.81 |
| 550 | 600 | 575 | 3 | 0.35 | 867 | 4 | 99.88 | 0.46 |
| 600 | 650 | 625 | 0 | 0.00 | 867 | 1 | 99.88 | 0.12 |
| 650 | 700 | 675 | 1 | 0.12 | 868 | 1 | 100 | 0.12 |
| TOTAL | 868 | 100.00 | ||||||
| Autor: GRUPO 2 | ||||||||
Colores de barras
# colores de las barras
colores <- gray.colors(length(ni), start = 0.3, end = 0.9)
Histograma de frecuencia absoluta local y global
#Histograma de frecuencia absoluta local
hist(
plomo,
main = "Gráfica Nº2: Distribución local de Porcentaje en Peso de Plomo
en el mineral de los Depositos Masivos
de Sulfuros Volcánicos",
xlab = "Porcentaje en Peso de Plomo (%p/p)",
ylab = "Cantidad",
col = colores
)
#Histograma de frecuencia absoluta global
hist(
plomo,
main = "Gráfica Nº3: Distribución global de Porcentaje en Peso de Plomo
en el mineral de los Depositos Masivos
de Sulfuros Volcánicos",
xlab = "Porcentaje en Peso de Plomo (%p/p)",
ylab = "Cantidad ",
col = colores,
ylim = c(0, 868)
)
# Intervalos de 200 en 200
breaks_100 <- seq(
from = floor(min(plomo)/100)*100,
to = ceiling(max(plomo)/100)*100,
by = 100
)
# Etiquetas de intervalos
intervalos <- paste(
breaks_100[-length(breaks_100)],
breaks_100[-1],
sep = "-"
)
h <- hist(plomo, breaks = breaks_100, plot = FALSE)
hi_f <- h$counts
intervalos <- paste(h$breaks[-length(h$breaks)],
h$breaks[-1],
sep = "-")
barplot(
hi_f,
names.arg = intervalos,
col = colores,
ylim = c(0, 80),
space = 0,
cex.names = 0.6,
ylab = "Porcentaje (%)",
xlab = "Porcentaje en Peso de Plomo (% p/p)",
main = "Gráfica Nº4: Distribución relativa Local de Porcentaje en Peso de Plomo
en el mineral de los Depósitos Masivos de Sulfuros Volcánicos",
las = 2
)
#Histograma de frecuencia relativa (global)
barplot(
hi_f,
names.arg = intervalos,
col = colores,
ylim = c(0, 100),
cex.names = 0.6,
space = 0,
ylab = "Porcentaje (%)",
xlab = "Porcentaje en Peso de Plomo (% p/p)",
main = "Gráfica Nº5: Distribución relativa global de Porcentaje en Peso de Plomo
en el mineral de los Depósitos Masivos de Sulfuros Volcánicos",
las = 2
)
#Diagrama de caja
boxplot(
plomo,
horizontal = TRUE,
main = "Gráfica Nº6: Distribución de frecuencia de Porcentaje en Peso de Plomo
en el mineral de los Depósitos Masivos de Sulfuros Volcánicos",
xlab = "Porcentaje en peso de plomo",
col = colores
)
Niasc_f <- as.numeric(TDFplomo_f$Niasc_f)
Nidsc_f <- as.numeric(TDFplomo_f$Nidsc_f)
Ojivas combinadas Ni y hi
#Ojivas combinadas Ni
plot(lss, Nidsc_f, type="o",
main="Gráfica Nº7: Distribución de frecuencia acumulada
absoluta de Porcentaje en Peso de Plomo
en el mineral de los Depósitos Masivos de Sulfuros Volcánicos"
, ylab="Cantidad", col="blue", xlab="Porcentaje en Peso de Plomo (% p/p)")
lines(lis, Niasc_f, col="black", type="b")
#Ojivas combinadas Hi
plot(lss, Hidsc_f, type="o",
main="Gráfica Nº8: Distribución de frecuencia acumulada
absoluta de Porcentaje en Peso de Plomo
en el mineral de los Depósitos Masivos de Sulfuros Volcánicos"
, ylab="Porcentaje", col="blue", xlab="Porcentaje en Peso de Plomo (% p/p)")
lines(lis, Hiasc_f, col="black",type="b")
Ver cuartiles
#cuartiles
summary(plomo)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.00 0.00 0.00 28.64 13.00 652.00
Posicion
#MEDIA ARITMETICA
x<-mean(plomo)
x
## [1] 28.6394
#MEDIANA ARITMETICA
ri<-min(plomo)
rs<-max(plomo)
Me<-median(plomo)
Me
## [1] 0
Dispersion
#DESVIACIÓN ESTÁNDAR
sd<-sd(plomo)
sd
## [1] 79.28055
#COEFICIENTE DE VARIACIÓN
CV <- ((sd / x) * 100)
CV
## [1] 276.8233
Forma
#COEFICIENTE DE ASIMETRÍA
As<-skewness(plomo)
As
## [1] 4.342582
#COEFICIENTE DE CURTOSIS
K<-kurtosis(plomo)
K
## [1] 21.7807
#COEFICIENTE DE ASIMETRÍA
Variable<-c("Porcentaje en Peso de Plomo (% p/p)")
TablaIndicadores<-data.frame(Variable,ri,rs,round(x,2),Me,round(sd,2), round(CV,2), round(As,2),round(K))
colnames(TablaIndicadores)<-c("Variable","minimo","máximo","x","Me","sd","Cv (%)","As","K")
kable(TablaIndicadores, format = "markdown", caption = "Tabla N°3. Indicadores
estadíticos de la variable Porcentaje en Peso de Plomo en el mineral de los
Depósitos Masivos de Sulfuros Volcánico")
| Variable | minimo | máximo | x | Me | sd | Cv (%) | As | K |
|---|---|---|---|---|---|---|---|---|
| Porcentaje en Peso de Plomo (% p/p) | 0 | 652 | 28.64 | 0 | 79.28 | 276.82 | 4.34 | 22 |
#COEFICIENTE DE ASIMETRÍA
outliers<-boxplot.stats(plomo)$out
# Contar los valores atípicos
num_outliers <- length(outliers)
num_outliers
## [1] 155
minoutliers<-min(outliers)
minoutliers
## [1] 33
maxoutliers<-max(outliers)
maxoutliers
## [1] 652
TablaOutliers<-data.frame(num_outliers,minoutliers,maxoutliers)
colnames(TablaOutliers)<-c("Outliers","Mínimo","Máximo")
kable(TablaOutliers, format = "markdown", caption = "Tabla N°4: Outliers de la variable
Porcentaje en Peso de Plomo en el mineral de los Depósitos Masivos de Sulfuros Volcánico).")
| Outliers | Mínimo | Máximo |
|---|---|---|
| 155 | 33 | 652 |
TablaOutliers
## Outliers Mínimo Máximo
## 1 155 33 652
La variable porcentaje en peso de plomo presenta valores que fluctuan entre 0 y 652, con valores entorno a 23% de plomo. Con una desviación estándar de 79.28 y un coeficiente de variación del 276.82% lo que indican un conjunto altamente heterogeneo en la distribución. La amuluacion de datos se concentra de manera fuerte en los valores altos, con la presencia de 155 valores atípicos 103 . En consecuencia, la mayoría de los depósitos masivos de sulfuros volcánicos presentan bajos contenidos de plomo, siendo pocos los casos con concentraciones excepcionalmente bajas.