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)
longitud<- subset(longitud,longitud>=0)

CARGA DE LIBRERIAS

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

TABLA DE DISTRIBUCIÓN DE FRECUENCIA POR STURGES

TABLA DE DISTRIBUCION DE FRECUENCIA 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    2.0  19.7  10.85 73 13.62    73   536  13.62 100.00
## 2   19.7  37.4  28.55 54 10.07   127   463  23.69  86.38
## 3   37.4  55.1  46.25 58 10.82   185   409  34.51  76.31
## 4   55.1  72.8  63.95 84 15.67   269   351  50.19  65.49
## 5   72.8  90.5  81.65 61 11.38   330   267  61.57  49.81
## 6   90.5 108.2  99.35 30  5.60   360   206  67.16  38.43
## 7  108.2 125.9 117.05 47  8.77   407   176  75.93  32.84
## 8  125.9 143.6 134.75 88 16.42   495   129  92.35  24.07
## 9  143.6 161.3 152.45 38  7.09   533    41  99.44   7.65
## 10 161.3 179.0 170.15  3  0.56   536     3 100.00   0.56

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      2  19.7  10.85  73  13.62    73   536 13.62   100
## 2   19.7  37.4  28.55  54  10.07   127   463 23.69 86.38
## 3   37.4  55.1  46.25  58  10.82   185   409 34.51 76.31
## 4   55.1  72.8  63.95  84  15.67   269   351 50.19 65.49
## 5   72.8  90.5  81.65  61  11.38   330   267 61.57 49.81
## 6   90.5 108.2  99.35  30   5.60   360   206 67.16 38.43
## 7  108.2 125.9 117.05  47   8.77   407   176 75.93 32.84
## 8  125.9 143.6 134.75  88  16.42   495   129 92.35 24.07
## 9  143.6 161.3 152.45  38   7.09   533    41 99.44  7.65
## 10 161.3   179 170.15   3   0.56   536     3   100  0.56
## 11 TOTAL              536 100.00

TABLA DE DISTRIBUCIÓN DE FRECUENCIA 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 frecuencias simples y acumuladas 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 frecuencias simples y acumuladas de longitud en los depósitos masivos de sulfuros
Li Ls MC ni hi Niasc Nidsc Hiasc Hidsc
2 19.7 10.85 73 13.62 73 536 13.62 100
19.7 37.4 28.55 54 10.07 127 463 23.69 86.38
37.4 55.1 46.25 58 10.82 185 409 34.51 76.31
55.1 72.8 63.95 84 15.67 269 351 50.19 65.49
72.8 90.5 81.65 61 11.38 330 267 61.57 49.81
90.5 108.2 99.35 30 5.60 360 206 67.16 38.43
108.2 125.9 117.05 47 8.77 407 176 75.93 32.84
125.9 143.6 134.75 88 16.42 495 129 92.35 24.07
143.6 161.3 152.45 38 7.09 533 41 99.44 7.65
161.3 179 170.15 3 0.56 536 3 100 0.56
TOTAL 536 100.00
Autor: GRUPO 2

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

TABLA DE DISTRIBUCIÓN DE FRECUENCIA SIMPLIFICADA

HISTOGRAMA DE DISTRIBUCIÓN DE FRECUENCIA

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

TABLA DE DISTRIBUCION DE FRECUENCIA SIMPLIFICADA

#LIMITE INFERIOR SIMPLIFICADA

lis<- histograma_lon$breaks[1:9]
lis
## [1]   0  20  40  60  80 100 120 140 160
#LIMITE SUPERIOR SIMPLIFICADA
lss<-histograma_lon$breaks[2:10]
lss
## [1]  20  40  60  80 100 120 140 160 180
#MARCA DE CLASE
MC_f<-histograma_lon$mids
MC_f
## [1]  10  30  50  70  90 110 130 150 170
# Frecuencia absoluta(ni)
ni_f <-histograma_lon $counts
ni_f
## [1]  85  64 108  15  74  43 102  42   3
# Frecuencia relativa (hi)
hi_f <- (ni_f/sum(ni_f))*100
hi_f
## [1] 15.8582090 11.9402985 20.1492537  2.7985075 13.8059701  8.0223881 19.0298507
## [8]  7.8358209  0.5597015
# 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   0  20   10   85 15.86      85     536   15.86  100.00
## 2  20  40   30   64 11.94     149     451   27.80   84.14
## 3  40  60   50  108 20.15     257     387   47.95   72.20
## 4  60  80   70   15  2.80     272     279   50.75   52.05
## 5  80 100   90   74 13.81     346     264   64.55   49.25
## 6 100 120  110   43  8.02     389     190   72.57   35.45
## 7 120 140  130  102 19.03     491     147   91.60   27.43
## 8 140 160  150   42  7.84     533      45   99.44    8.40
## 9 160 180  170    3  0.56     536       3  100.00    0.56

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      0  20   10   85  15.86      85     536   15.86     100
## 2     20  40   30   64  11.94     149     451    27.8   84.14
## 3     40  60   50  108  20.15     257     387   47.95    72.2
## 4     60  80   70   15   2.80     272     279   50.75   52.05
## 5     80 100   90   74  13.81     346     264   64.55   49.25
## 6    100 120  110   43   8.02     389     190   72.57   35.45
## 7    120 140  130  102  19.03     491     147    91.6   27.43
## 8    140 160  150   42   7.84     533      45   99.44     8.4
## 9    160 180  170    3   0.56     536       3     100    0.56
## 10 TOTAL           536 100.00

TABLA DE DISTRIBUCION DE FRECUENCIA SIMPLIFICADA FINAL

# TABLA DE DISTRIBUCION DE FRECUENCIA SIMPLIFICADA FINAL
tabla_lon_f <- TDFlon_t %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nº:2*"),
    subtitle = md("Tabla de distribución de frecuencias simples y acumuladas 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_f
Tabla Nº:2
Tabla de distribución de frecuencias simples y acumuladas de longitud en los depósitos masivos de sulfuros
lis lss MC_f ni_f hi_f Niasc_f Nidsc_f Hiasc_f Hidsc_f
0 20 10 85 15.86 85 536 15.86 100
20 40 30 64 11.94 149 451 27.8 84.14
40 60 50 108 20.15 257 387 47.95 72.2
60 80 70 15 2.80 272 279 50.75 52.05
80 100 90 74 13.81 346 264 64.55 49.25
100 120 110 43 8.02 389 190 72.57 35.45
120 140 130 102 19.03 491 147 91.6 27.43
140 160 150 42 7.84 533 45 99.44 8.4
160 180 170 3 0.56 536 3 100 0.56
TOTAL 536 100.00
Autor: GRUPO 2

GRÁFICAS DE DISTRIBUCIÓN DE FRECUENCIA

Colores de las barras

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

Histograma de frecuencia absoluta local

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

Histograma de frecuencia absoluta global

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

Histograma de frecuencia relativa local

# 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 relativa local de longitud
en depósitos masivos de sulfuros volcánicos",
  las = 1
)

Histograma de frecuencia relativa global

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 relativa global de 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 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: Distribución de longitud en depositos masivos 
  de sulfuros volcanicos"
     , ylab="Cantidad", 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: Distribución de longitud en depositos masivos 
  de sulfuros volcanicos"
     , ylab="Porcentaje", 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. 
##    2.00   38.00   72.00   77.38  124.00  179.00

Indicadores Estadisticos

POSICION

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

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

DISPERSION

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

FORMA

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

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íticos
      de la variable longitud en los depositos masivos de sulfuros volcanicos")
Tabla N°3. Indicadores estadíticos de la variable longitud en los depositos masivos de sulfuros volcanicos
Variable minimo máximo x Me sd Cv (%) As K
Longitud 2 179 77.38 72 46.64 60.28 0.13 -1.35

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.