CARGA DE DATOS
library(dplyr)
library(stringr)
library(gt)
datos <- read.csv("D:/dataset_CMIO_geologico.csv")
df_deposito <- data.frame(deposito = toupper(trimws(datos$Deposit_Type)))
ASIGNACION DE VARIABLES
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 ~ NA_character_
)
orden_deposit <- c(
"Sediment-hosted",
"Skarn",
"VMS",
"Porphyry",
"Epithermal"
)
df_deposito$deposito <- factor(
df_deposito$deposito,
levels = orden_deposit,
ordered = TRUE
)
TABLA DE DISTRIBUCION DE CANTIDAD
TDF_deposito <- df_deposito %>%
count(deposito, name = "ni") %>%
arrange(deposito) %>%
mutate(hi = round(ni / sum(ni) * 100, 0))
tabla_deposito <- TDF_deposito %>%
gt() %>%
tab_header(
title = "Tabla N° 1",
subtitle = "Distribución del Tipo de Depósito"
)
tabla_deposito
| Tabla N° 1 | ||
| Distribución del Tipo de Depósito | ||
| deposito | ni | hi |
|---|---|---|
| Sediment-hosted | 475 | 19 |
| Skarn | 521 | 21 |
| VMS | 474 | 19 |
| Porphyry | 533 | 21 |
| Epithermal | 497 | 20 |
# Agregamos fila TOTAL
tabla_final_deposito <- TDF_deposito %>%
mutate(
deposito = as.character(deposito)
)
tabla_final_deposito <- bind_rows(
tabla_final_deposito,
data.frame(
deposito = "TOTAL",
ni = sum(tabla_final_deposito$ni),
hi = sum(tabla_final_deposito$hi)
)
)
# TABLA ESQUELETO
tabla_deposito_gt <- tabla_final_deposito %>%
gt() %>%
tab_header(
title = md("**Tabla Nº1**"),
subtitle = md("Distribución ordinal del tipo de depósito mineral")
) %>%
cols_label(
deposito = "Tipo de Depósito",
ni = "Frecuencia",
hi = "Porcentaje (%)"
) %>%
cols_align(
align = "center",
columns = everything()
) %>%
fmt_number(
columns = c(ni, hi),
decimals = 0
) %>%
tab_style(
style = cell_text(weight = "bold"),
locations = cells_body(
rows = deposito == "TOTAL"
)
) %>%
tab_source_note(
source_note = md("Autor: Grupo 2")
)
tabla_deposito_gt# Agregamos fila TOTAL
| Tabla Nº1 | ||
| Distribución ordinal del tipo de depósito mineral | ||
| Tipo de Depósito | Frecuencia | Porcentaje (%) |
|---|---|---|
| Sediment-hosted | 475 | 19 |
| Skarn | 521 | 21 |
| VMS | 474 | 19 |
| Porphyry | 533 | 21 |
| Epithermal | 497 | 20 |
| TOTAL | 2,500 | 100 |
| Autor: Grupo 2 | ||
tabla_final_deposito <- TDF_deposito %>%
mutate(
deposito = as.character(deposito)
)
tabla_final_deposito <- bind_rows(
tabla_final_deposito,
data.frame(
deposito = "TOTAL",
ni = sum(tabla_final_deposito$ni),
hi = sum(tabla_final_deposito$hi)
)
)
# Gráfica Nº1: Frecuencia absoluta
barplot(TDF_deposito$ni,
main = "Gráfica Nº1: Frecuencia del Tipo de Depósito",
xlab = "Tipo de Depósito",
ylab = "Cantidad (ni)",
col = "steelblue",
names.arg = TDF_deposito$deposito,
cex.names = 0.8,
las = 1)
# Gráfica Nº2: Frecuencia absoluta ajustada
barplot(TDF_deposito$ni,
main = "Gráfica Nº2: Frecuencia del Tipo de Depósito (Escala Ajustada)",
xlab = "Tipo de Depósito",
ylab = "Cantidad (ni)",
col = "steelblue",
names.arg = TDF_deposito$deposito,
cex.names = 0.8,
las = 1,
ylim = c(0, max(TDF_deposito$ni) * 1.2))
# Gráfica Nº3: Frecuencia relativa
barplot(TDF_deposito$hi,
main = "Gráfica Nº3: Porcentaje del Tipo de Depósito",
xlab = "Tipo de Depósito",
ylab = "Porcentaje (%)",
col = "steelblue",
names.arg = TDF_deposito$deposito,
cex.names = 0.8,
las = 1)
# Gráfica Nº4: Frecuencia relativa escala completa
barplot(TDF_deposito$hi,
main = "Gráfica Nº4: Porcentaje del Tipo de Depósito (Escala Completa)",
xlab = "Tipo de Depósito",
ylab = "Porcentaje (%)",
col = "steelblue",
names.arg = TDF_deposito$deposito,
cex.names = 0.8,
las = 1,
ylim = c(0, 100))
# Gráfico circular
par(mar = c(4, 4, 4, 8))
colores <- rainbow(length(TDF_deposito$hi))
pie(TDF_deposito$hi,
col = colores,
main = "Distribución del Tipo de Depósito",
labels = NA)
legend("right",
legend = paste(TDF_deposito$deposito, TDF_deposito$hi, "%"),
fill = colores,
title = "DEPÓSITOS",
bty = "o",
xpd = TRUE,
inset = c(-0.25, 0))
# Moda
moda_deposito <- TDF_deposito[TDF_deposito$ni == max(TDF_deposito$ni), ]
moda_deposito
## deposito ni hi
## 4 Porphyry 533 21
# Mediana
TDF_deposito <- TDF_deposito %>%
mutate(Ni = cumsum(ni))
N <- sum(TDF_deposito$ni)
mediana_deposito <- TDF_deposito %>%
filter(Ni >= N/2) %>%
slice(1)
mediana_deposito
## deposito ni hi Ni
## 1 VMS 474 19 1470
#conclucion