library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(stringr)
library(gt)

datos <- read.csv("D:/dataset_CMIO_geologico.csv")



# Extraer variable

df_deposito <- data.frame(

deposito = toupper(trimws(datos$Deposit_Type))

)

# Reemplazar categorías

df_deposito$deposito <- case_when(

toupper(df_deposito$deposito) == "SEDIMENT-HOSTED" ~ "Sediment-hosted",

toupper(df_deposito$deposito) == "SKARN" ~ "Skarn",

toupper(df_deposito$deposito) == "VMS" ~ "VMS",

toupper(df_deposito$deposito) == "PORPHYRY" ~ "Porphyry",

toupper(df_deposito$deposito) == "EPITHERMAL" ~ "Epithermal",

TRUE ~ "Sin registro"

)

# Orden de categorías

orden_deposit <- c(

"Sediment-hosted",

"Skarn",

"VMS",

"Porphyry",

"Epithermal",

"Sin registro"

)

# Convertir en factor ordenado

df_deposito$deposito <- factor(

df_deposito$deposito,

levels = orden_deposit

)

# Frecuencias y probabilidad

ni <- table(df_deposito$deposito)

hi <- round(prop.table(ni), 4)

P <- round(hi * 100, 2)

# Crear tabla base

tabla_finaldeposito <- data.frame(

Tipo_Deposito = names(ni),

ni = as.numeric(ni),

hi = as.numeric(hi),

P = as.numeric(P)

)

# Fila TOTAL

fila_total <- data.frame(

Tipo_Deposito = "TOTAL",

ni = sum(tabla_finaldeposito$ni),

hi = round(sum(tabla_finaldeposito$hi), 4),

P = round(sum(tabla_finaldeposito$P), 2)

)

# Mostrar

tabla_finaldeposito <- rbind(tabla_finaldeposito, fila_total)

tabla_finaldeposito
##     Tipo_Deposito   ni     hi      P
## 1 Sediment-hosted  475 0.1900  19.00
## 2           Skarn  521 0.2084  20.84
## 3             VMS  474 0.1896  18.96
## 4        Porphyry  533 0.2132  21.32
## 5      Epithermal  497 0.1988  19.88
## 6    Sin registro    0 0.0000   0.00
## 7           TOTAL 2500 1.0000 100.00
tabla_deposito_gt <- tabla_finaldeposito %>%

gt() %>%

tab_header(

title = md("**Tabla N° 3**"),

subtitle = md("Distribución de probabilidad de los tipos de depósitos minerales analizados en Estados Unidos")

) %>%

tab_source_note(

source_note = md("Autor: Grupo 2")

) %>%

tab_options(

table.border.top.color = "black",

table.border.bottom.color = "black",

heading.border.bottom.color = "black",

heading.border.bottom.width = px(2),

column_labels.border.top.color = "black",

column_labels.border.bottom.color = "black",

column_labels.border.bottom.width = px(2),

table_body.hlines.color = "gray",

table_body.border.bottom.color = "black",

row.striping.include_table_body = TRUE

) %>%

tab_style(

style = cell_text(weight = "bold"),

locations = cells_body(rows = Tipo_Deposito == "TOTAL")

)

tabla_deposito_gt
Tabla N° 3
Distribución de probabilidad de los tipos de depósitos minerales analizados en Estados Unidos
Tipo_Deposito ni hi P
Sediment-hosted 475 0.1900 19.00
Skarn 521 0.2084 20.84
VMS 474 0.1896 18.96
Porphyry 533 0.2132 21.32
Epithermal 497 0.1988 19.88
Sin registro 0 0.0000 0.00
TOTAL 2500 1.0000 100.00
Autor: Grupo 2
# Extraer probabilidad (%) sin la fila TOTAL

P_global <- as.numeric(tabla_finaldeposito$P[1:(nrow(tabla_finaldeposito)-1)])

barplot(

P_global,

main = "Gráfica Nº3: Distribución de probabilidad de los tipos\nde depósitos minerales analizados en Estados Unidos",

cex.main = 0.8,

xlab = "Tipo de depósito",

ylab = "Probabilidad (%)",

col = "blue",

names.arg = tabla_finaldeposito$Tipo_Deposito[1:(nrow(tabla_finaldeposito)-1)],

cex.names = 0.9,

ylim = c(0, 100),

las = 1

)

# Eliminar fila TOTAL

tabla_sin_total <- tabla_finaldeposito[

tabla_finaldeposito$Tipo_Deposito != "TOTAL",

]

# Extraer probabilidad de la categoría "Porphyry"

prob_porphyry <- tabla_sin_total$P[

tabla_sin_total$Tipo_Deposito == "Porphyry"

]

# Gráfico de texto explicativo

plot(1, type = "n", axes = FALSE, xlab = "", ylab = "")

text(

x = 1, y = 1,

labels = paste(

"Cálculo de probabilidad\n(Estimación general)\n\n",

"¿Qué probabilidad existe de que una muestra\n",

"geoquímica o geológica analizada en Estados Unidos\n",

"pertenezca a un depósito tipo Porphyry?\n\n",

"Probabilidad = ", prob_porphyry, " (%)",

sep = ""

),

cex = 1.3,

col = "black",

font = 2

)