ANÁLISIS ESTADÍSTICO

CARGA DE DATOS Y LIBRERÍAS

CARGA DE DATOS

#Carga de datos
setwd("~/UNI/ESTADISTICA")
datos <- read.csv("Depositos_Sulfuro.csv", header = TRUE, sep = ";", dec = ".")

#Limpiamos la Variable
longitud <- as.numeric(datos$londeg)
longitud <- na.omit(longitud)

CARGA DE LIBRERIAS

#Carga de librerias
library(gt)
library(dplyr)
library(knitr)
library(e1071)

TABLA DE DISTRIBUCIÓN DE CANTIDAD POR STURGES

TABLA DE DISTRIBUCION DE CANTIDAD POR STURGES

# Calculamos el numero de datos
n <- length(longitud)

# Numero de clases con Sturges
k <- floor(1 + 3.3 * log10(n))


# Min, Max 
minimo <- min(longitud)
maximo <- max(longitud)

#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(longitud >= Li[i] & longitud < Ls[i])
}
ni[length(Li)] <- sum(longitud >= Li[length(Li)] & longitud<= 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
TDFlon <- round(data.frame(
  Li, Ls, MC, ni, hi , Niasc, Nidsc, Hiasc, Hidsc
),2)

TDFlon
##         Li      Ls      MC  ni    hi Niasc Nidsc  Hiasc  Hidsc
## 1  -157.00 -126.45 -141.72  42  3.85    42  1090   3.85 100.00
## 2  -126.45  -95.91 -111.18 159 14.59   201  1048  18.44  96.15
## 3   -95.91  -65.36  -80.63 215 19.72   416   889  38.17  81.56
## 4   -65.36  -34.82  -50.09  58  5.32   474   674  43.49  61.83
## 5   -34.82   -4.27  -19.55  79  7.25   553   616  50.73  56.51
## 6    -4.27   26.27   11.00 102  9.36   655   537  60.09  49.27
## 7    26.27   56.82   41.55  87  7.98   742   435  68.07  39.91
## 8    56.82   87.36   72.09 138 12.66   880   348  80.73  31.93
## 9    87.36  117.91  102.63  46  4.22   926   210  84.95  19.27
## 10  117.91  148.45  133.18 152 13.94  1078   164  98.90  15.05
## 11  148.45  179.00  163.72  12  1.10  1090    12 100.00   1.10

Fila total de las sumas de ni y hi

# FILA TOTAL
fila_total <- data.frame(
  Li = "TOTAL",
  Ls = "",
  MC = "",
  ni = sum(TDFlon$ni),
  hi = round(sum(TDFlon$hi),),
  Niasc = "",
  Nidsc = "",
  Hiasc = "",
  Hidsc = ""
)

#TABLA FINAL 
TDFlon_p <- rbind(TDFlon, fila_total)
TDFlon_p
##         Li      Ls      MC   ni     hi Niasc Nidsc Hiasc Hidsc
## 1     -157 -126.45 -141.72   42   3.85    42  1090  3.85   100
## 2  -126.45  -95.91 -111.18  159  14.59   201  1048 18.44 96.15
## 3   -95.91  -65.36  -80.63  215  19.72   416   889 38.17 81.56
## 4   -65.36  -34.82  -50.09   58   5.32   474   674 43.49 61.83
## 5   -34.82   -4.27  -19.55   79   7.25   553   616 50.73 56.51
## 6    -4.27   26.27      11  102   9.36   655   537 60.09 49.27
## 7    26.27   56.82   41.55   87   7.98   742   435 68.07 39.91
## 8    56.82   87.36   72.09  138  12.66   880   348 80.73 31.93
## 9    87.36  117.91  102.63   46   4.22   926   210 84.95 19.27
## 10  117.91  148.45  133.18  152  13.94  1078   164  98.9 15.05
## 11  148.45     179  163.72   12   1.10  1090    12   100   1.1
## 12   TOTAL                 1090 100.00

TABLA DE DISTRIBUCIÓN DE CANTIDAD POR STURGES FINAL

# TABLA GT
tabla_lon_p <- TDFlon_p %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nº:1*"),
    subtitle = md("Tabla de distribución de cantidad de 
                  longitud en los depósitos masivos de sulfuros")
  ) %>%
  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_lon_p
Tabla Nº:1
Tabla de distribución de cantidad de longitud en los depósitos masivos de sulfuros
Li Ls MC ni hi Niasc Nidsc Hiasc Hidsc
-157 -126.45 -141.72 42 3.85 42 1090 3.85 100
-126.45 -95.91 -111.18 159 14.59 201 1048 18.44 96.15
-95.91 -65.36 -80.63 215 19.72 416 889 38.17 81.56
-65.36 -34.82 -50.09 58 5.32 474 674 43.49 61.83
-34.82 -4.27 -19.55 79 7.25 553 616 50.73 56.51
-4.27 26.27 11 102 9.36 655 537 60.09 49.27
26.27 56.82 41.55 87 7.98 742 435 68.07 39.91
56.82 87.36 72.09 138 12.66 880 348 80.73 31.93
87.36 117.91 102.63 46 4.22 926 210 84.95 19.27
117.91 148.45 133.18 152 13.94 1078 164 98.9 15.05
148.45 179 163.72 12 1.10 1090 12 100 1.1
TOTAL 1090 100.00
Autor: GRUPO 2

TABLA DE DISTRIBUCIÓN DE CANTIDAD SIMPLIFICADA

DEBIDO A QUE LA TABLA SE PRESENTA CON NUMEROS MUY DIFICILES SE DECIDIO SIMPLIFICAR LA TABLA

HISTOGRAMA DE DISTRIBUCIÓN DE CANTIDAD

histograma_lon<-hist(longitud,
                     main = "Gráfica Nº1: Distribución de cantidad de la longitud
                     en depositos masivos de sulfuros volcanicos ",
                     xlab = "longitud",
                     ylab = "Cantidad",
                     col = "gray")

TABLA DE DISTRIBUCION DE CANTIDAD SIMPLIFICADA

#LIMITE INFERIOR SIMPLIFICADA

lis<- histograma_lon$breaks[1:17]
lis
##  [1] -160 -140 -120 -100  -80  -60  -40  -20    0   20   40   60   80  100  120
## [16]  140  160
#LIMITE SUPERIOR SIMPLIFICADA
lss<-histograma_lon$breaks[2:18]
lss
##  [1] -140 -120 -100  -80  -60  -40  -20    0   20   40   60   80  100  120  140
## [16]  160  180
#MARCA DE CLASE
MC_f<-histograma_lon$mids
MC_f
##  [1] -150 -130 -110  -90  -70  -50  -30  -10   10   30   50   70   90  110  130
## [16]  150  170
# Frecuencia absoluta(ni)
ni_f <-histograma_lon $counts
ni_f
##  [1]  20  63 106  66 175  44   0  80  85  64 108  15  74  43 102  42   3
# Frecuencia relativa (hi)
hi_f <- (ni_f/sum(ni_f))*100
hi_f
##  [1]  1.8348624  5.7798165  9.7247706  6.0550459 16.0550459  4.0366972
##  [7]  0.0000000  7.3394495  7.7981651  5.8715596  9.9082569  1.3761468
## [13]  6.7889908  3.9449541  9.3577982  3.8532110  0.2752294
# 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
TDFlon_f <- round(data.frame(
  lis, lss, MC_f, ni_f, hi_f, Niasc_f, Nidsc_f, Hiasc_f, Hidsc_f
),2)

TDFlon_f
##     lis  lss MC_f ni_f  hi_f Niasc_f Nidsc_f Hiasc_f Hidsc_f
## 1  -160 -140 -150   20  1.83      20    1090    1.83  100.00
## 2  -140 -120 -130   63  5.78      83    1070    7.61   98.17
## 3  -120 -100 -110  106  9.72     189    1007   17.34   92.39
## 4  -100  -80  -90   66  6.06     255     901   23.39   82.66
## 5   -80  -60  -70  175 16.06     430     835   39.45   76.61
## 6   -60  -40  -50   44  4.04     474     660   43.49   60.55
## 7   -40  -20  -30    0  0.00     474     616   43.49   56.51
## 8   -20    0  -10   80  7.34     554     616   50.83   56.51
## 9     0   20   10   85  7.80     639     536   58.62   49.17
## 10   20   40   30   64  5.87     703     451   64.50   41.38
## 11   40   60   50  108  9.91     811     387   74.40   35.50
## 12   60   80   70   15  1.38     826     279   75.78   25.60
## 13   80  100   90   74  6.79     900     264   82.57   24.22
## 14  100  120  110   43  3.94     943     190   86.51   17.43
## 15  120  140  130  102  9.36    1045     147   95.87   13.49
## 16  140  160  150   42  3.85    1087      45   99.72    4.13
## 17  160  180  170    3  0.28    1090       3  100.00    0.28

Fila total de las sumas de ni y hi

# FILA TOTAL
fila_total_f <- data.frame(
  lis = "TOTAL",
  lss = "",
  MC_f = "",
  ni_f = sum(TDFlon_f$ni_f),
  hi_f = round(sum(TDFlon_f$hi_f),),
  Niasc_f = "",
  Nidsc_f = "",
  Hiasc_f = "",
  Hidsc_f = ""
)

TDFlon_t <- rbind(TDFlon_f, fila_total_f)
TDFlon_t
##      lis  lss MC_f ni_f   hi_f Niasc_f Nidsc_f Hiasc_f Hidsc_f
## 1   -160 -140 -150   20   1.83      20    1090    1.83     100
## 2   -140 -120 -130   63   5.78      83    1070    7.61   98.17
## 3   -120 -100 -110  106   9.72     189    1007   17.34   92.39
## 4   -100  -80  -90   66   6.06     255     901   23.39   82.66
## 5    -80  -60  -70  175  16.06     430     835   39.45   76.61
## 6    -60  -40  -50   44   4.04     474     660   43.49   60.55
## 7    -40  -20  -30    0   0.00     474     616   43.49   56.51
## 8    -20    0  -10   80   7.34     554     616   50.83   56.51
## 9      0   20   10   85   7.80     639     536   58.62   49.17
## 10    20   40   30   64   5.87     703     451    64.5   41.38
## 11    40   60   50  108   9.91     811     387    74.4    35.5
## 12    60   80   70   15   1.38     826     279   75.78    25.6
## 13    80  100   90   74   6.79     900     264   82.57   24.22
## 14   100  120  110   43   3.94     943     190   86.51   17.43
## 15   120  140  130  102   9.36    1045     147   95.87   13.49
## 16   140  160  150   42   3.85    1087      45   99.72    4.13
## 17   160  180  170    3   0.28    1090       3     100    0.28
## 18 TOTAL           1090 100.00

TABLA DE DISTRIBUCION DE CANTIDAD SIMPLIFICADA FINAL

# TABLA DE DISTRIBUCION DE CANTIDAD SIMPLIFICADA FINAL
tabla_lon_f <- TDFlon_t %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nº:2*"),
    subtitle = md("Tabla de distribución de cantidad de la
                  longitud en los depósitos masivos de sulfuros")
  ) %>%
  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_lon_f
Tabla Nº:2
Tabla de distribución de cantidad de la longitud en los depósitos masivos de sulfuros
lis lss MC_f ni_f hi_f Niasc_f Nidsc_f Hiasc_f Hidsc_f
-160 -140 -150 20 1.83 20 1090 1.83 100
-140 -120 -130 63 5.78 83 1070 7.61 98.17
-120 -100 -110 106 9.72 189 1007 17.34 92.39
-100 -80 -90 66 6.06 255 901 23.39 82.66
-80 -60 -70 175 16.06 430 835 39.45 76.61
-60 -40 -50 44 4.04 474 660 43.49 60.55
-40 -20 -30 0 0.00 474 616 43.49 56.51
-20 0 -10 80 7.34 554 616 50.83 56.51
0 20 10 85 7.80 639 536 58.62 49.17
20 40 30 64 5.87 703 451 64.5 41.38
40 60 50 108 9.91 811 387 74.4 35.5
60 80 70 15 1.38 826 279 75.78 25.6
80 100 90 74 6.79 900 264 82.57 24.22
100 120 110 43 3.94 943 190 86.51 17.43
120 140 130 102 9.36 1045 147 95.87 13.49
140 160 150 42 3.85 1087 45 99.72 4.13
160 180 170 3 0.28 1090 3 100 0.28
TOTAL 1090 100.00
Autor: GRUPO 2

GRÁFICAS DE DISTRIBUCIÓN DE CANTIDAD

Colores de las barras

# colores de las barras
colores <- gray.colors(length(ni), start = 0.3, end = 0.9)

Histograma de cantidad

hist(
  longitud,
  main = "Gráfica Nº2: Distribución de cantidad de la longitud en depositos masivos 
  de sulfuros volcanicos ",
  xlab = "longitud",
  ylab = "Cantidad",
  col = colores
)

Histograma de cantidad

hist(
  longitud,
  main = "Gráfica Nº3: Distribución de cantidad de la longitud en depositos masivos 
  de sulfuros volcanicos",
  xlab = "longitud",
  ylab = "Cantidad ",
  col = colores,
  ylim = c(0, 536)
)

Histograma de cantidad en porcentaje

# Intervalos de 20 en 20
breaks_20 <- seq(
  from = floor(min(longitud)/20)*20,
  to   = ceiling(max(longitud)/20)*20,
  by   = 20
)

# Etiquetas de intervalos
etiquetas_x <- breaks_20[-1]


barplot(
  hi_f,
  names.arg = etiquetas_x,
  col = colores,
  space = 0,
  cex.names = 0.6,
  ylab = "Porcentaje (%)",
  xlab = "longitud",
  main = "Gráfica Nº4: Distribución de cantidad en porcentaje de la longitud
en depósitos masivos de sulfuros volcánicos",
  las = 1
)

Histograma de cantidad en porcentaje

barplot(
  hi_f,
  names.arg = etiquetas_x,
  col = colores,
  ylim = c(0, 100),
  cex.names = 0.6,
  space = 0,
  ylab = "Porcentaje (%)",
  xlab = "longitud",
  main = "Gráfica Nº5: Distribución de cantidad en porcentaje de la longitud
en depósitos masivos de sulfuros volcánicos",
  las = 2
)

DIAGRAMA DE CAJA

boxplot(
  longitud,
  horizontal = TRUE,
  main = "Gráfica Nº6: Distribución de cantidad de la longitud en depositos masivos 
  de sulfuros volcanicos",
  xlab = "longitud",
  col = colores
)

Convertir columnas que quedaron como character a numéricas

Niasc_f <- as.numeric(TDFlon_f$Niasc_f)
Nidsc_f <- as.numeric(TDFlon_f$Nidsc_f)

Ojivas combinadas Ni

plot(lss, Nidsc_f, type="o",
     main="Gráfica Nº7: Ojivas combinadas de cantidad acumulada de la
     longitud en depositos masivos de sulfuros volcanicos "
     , ylab="Cantidad Acumulada", col="blue", xlab="longitud")

lines(lis, Niasc_f, col="black", add=TRUE, type="b")

Ojivas combinadas Hi

plot(lss, Hidsc_f, type="o",
     main="Gráfica Nº8: Ojivas combinadas de porcentaje acumulado de la
     longitud en depositos masivos de sulfuros volcanicos"
     , ylab="Porcentaje Acumulado", col="blue", xlab="longitud)")

lines(lis, Hiasc_f, col="black", add=TRUE, type="b")

INDICADORES ESTADISTICOS Y OUTLIERS

Ver los cuartiles

summary(longitud) 
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
## -157.00  -79.00   -6.00   -1.85   66.75  179.00

Indicadores Estadisticos

POSICION

#MEDIA ARITMETICA
x<-mean(longitud)
x
## [1] -1.849541
#MEDIANA ARITMETICA

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

DISPERSION

#DESVIACIÓN ESTÁNDAR
sd<-sd(longitud)
sd
## [1] 88.63312
#COEFICIENTE DE VARIACIÓN
CV <- ((sd / x) * 100)
CV
## [1] -4792.168

FORMA

#COEFICIENTE DE ASIMETRÍA
As<-skewness(longitud)
As
## [1] 0.1814722
#COEFICIENTE DE CURTOSIS
K<-kurtosis(longitud)
K
## [1] -1.27094

TABLA DE INDICADORES ESTADISTICOS

Variable<-c("Longitud")
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 longitud en los depositos masivos de sulfuros volcanicos")
Tabla N°3. Indicadores estadísticos de la variable longitud en los depositos masivos de sulfuros volcanicos
Variable minimo máximo x Me sd Cv (%) As K
Longitud -157 179 -1.85 -6 88.63 -4792.17 0.18 -1.27

TABLA DE OUTLIERS

outliers<-boxplot.stats(longitud)$out 
# Contar los valores atípicos 
num_outliers <- length(outliers) 
num_outliers
## [1] 0
TablaOutliers<-data.frame(num_outliers)
colnames(TablaOutliers)<-c("Outliers")
kable(TablaOutliers, format = "markdown", caption = "Tabla N°4: Outliers de la variable
      longitud en los depositos masivos de sulfuros volcanicos).")
Tabla N°4: Outliers de la variable longitud en los depositos masivos de sulfuros volcanicos).
Outliers
0

CONCLUSIÓN

CONCLUSIÓN

La variable latitud, medida en grados, fluctúa entre 2 y 179, con valores que se encuentran en torno a la media de 77.38, y una desviación estándar de 46.64, lo que indica un conjunto de datos heterogeneos. La mayor concentración de registros se localiza en la parte media de la variable. Se identifican 0 valores atípicos Por todo lo anterior, el comportamiento de la longitud es medianamente beneficioso, ya que la amplia distribución longitudinal refleja la presencia global de los depósitos, lo cual favorece el análisis minero a escala regional y mundial, aunque con una mayor variabilidad espacial.