1. CARGA DE DATOS Y LIBRERÍAS
#==============================ENCABEZADO================================
# TEMA: ESTADÍSTICA DESCRIPTIVA - ECORREGIÓN
# AUTOR: GRUPO 2
# FECHA: 04-2026
#========================================================================
library(dplyr)
##
## 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(gt)
library(knitr)
setwd("C:/Users/HP/Documents/PROYECTO ESTADISTICA/RStudio")
datos <- read.csv("tablap.csv", header = TRUE, dec = ",", sep = ";")
2. TABLA DE DISTRIBUCIÓN DE CANTIDAD
eco_var <- datos$Ecoregion
ni_eco <- table(eco_var)
hi_eco <- round(prop.table(ni_eco) * 100, 2)
tabla_base_eco <- data.frame(Ecoregion = names(ni_eco), ni = as.numeric(ni_eco), hi = as.numeric(hi_eco))
fila_total_eco <- data.frame(Ecoregion = "TOTAL", ni = sum(tabla_base_eco$ni), hi = round(sum(tabla_base_eco$hi)))
tabla_final_eco <- rbind(tabla_base_eco, fila_total_eco)
# Visualizar la tabla con gt
tabla_eco_gt <- tabla_final_eco %>%
gt() %>%
cols_label(
Ecoregion = "Ecorregión",
ni = "ni",
hi = "hi (%)"
) %>%
tab_header(
title = md("Tabla N° 1. Distribución por Ecorregión de los pozos de gas natural")
) %>%
tab_style(
style = list(
cell_fill(color = "lightgray"),
cell_text(weight = "bold")
),
locations = cells_body(
rows = Ecoregion == "TOTAL"
)
) %>%
cols_align(
align = "center",
columns = c(ni, hi)
) %>%
tab_options(
table.width = pct(80),
heading.title.font.size = px(20),
heading.title.font.weight = "bold",
table.font.names = "Open Sans",
column_labels.font.weight = "bold"
)
tabla_eco_gt
| Tabla N° 1. Distribución por Ecorregión de los pozos de gas natural |
| Ecorregión |
ni |
hi (%) |
| Chihuahuan Deserts |
2150 |
17.12 |
| Colorado Plateaus |
3792 |
30.19 |
| High Plains |
946 |
7.53 |
| New Mexico Mountains |
4 |
0.03 |
| New Mexico Plateau |
3745 |
29.81 |
| Southern Rockies |
1747 |
13.91 |
| Southwestern Tablelands |
177 |
1.41 |
| TOTAL |
12561 |
100.00 |
3. GRÁFICAS DE DISTRIBUCIÓN DE CANTIDAD
# 3. CONFIGURACIÓN DE COLORES
color_abs <- "#A9CCE3"
color_rel <- "#EDBB99"
# GRÁFICAS DE DISTRIBUCIÓN
par(mar = c(10, 4, 4, 2))
# Gráfica Nro 1
barplot(ni_eco,
main = "Gráfica N° 1: Distribución de cantidad por Ecorregión",
xlab = "", ylab = "Cantidad (ni)",
col = color_abs, border = "white",
ylim = c(0, max(ni_eco)),
las = 2, cex.names = 0.8)

# Gráfica Nro 2
barplot(ni_eco,
main = "Gráfica N° 2: Distribución de cantidad por Ecorregión",
xlab = "", ylab = "Cantidad (ni)",
col = color_abs, border = "white",
ylim = c(0, 12561),
las = 2, cex.names = 0.8)

# Gráfica Nro 3
hi_local_eco <- as.numeric(tabla_final_eco$hi[1:(nrow(tabla_final_eco)-1)])
barplot(hi_local_eco,
main = "Gráfica N° 3: Distribución de cantidad en porcentaje por Ecorregión",
xlab = "", ylab = "Porcentaje (%)",
col = color_rel, border = "white",
names.arg = tabla_final_eco$Ecoregion[1:(nrow(tabla_final_eco)-1)],
las = 2, cex.names = 0.8)

# Gráfica Nro 4
barplot(hi_local_eco,
main = "Gráfica N° 4: Distribución de cantidad en porcentaje por Ecorregión",
xlab = "", ylab = "Porcentaje (%)",
col = color_rel, border = "white",
names.arg = tabla_final_eco$Ecoregion[1:(nrow(tabla_final_eco)-1)],
ylim = c(0, 100),
las = 2, cex.names = 0.8)

# DIAGRAMA CIRCULAR
par(mar = c(1, 1, 2, 7), xpd=TRUE)
hi_TD_eco <- as.numeric(tabla_final_eco$hi[1:(nrow(tabla_final_eco)-1)])
TD_eco <- tabla_final_eco$Ecoregion[1:(nrow(tabla_final_eco)-1)]
Colores <- colorRampPalette(c("#D7BDE2", "#A2D9CE", "#FAD7A0"))
etiquetas_eco <- paste0(round(hi_TD_eco), "%")
pie(
hi_TD_eco,
radius = 0.8,
col = Colores(length(hi_TD_eco)),
labels = etiquetas_eco,
main = "Gráfica N° 5: Distribución porcentual por Ecorregión",
cex.main = 1.0,
border = "white"
)
legend(
x = 1.1,
y = 0.5,
title = "Ecorregiones",
legend = TD_eco,
fill = Colores(length(hi_TD_eco)),
cex = 0.8,
bty = "n"
)

4. INDICADORES ESTADÍSTICOS
# 4.1 MODA
par(mar = c(5, 4, 4, 2), xpd=FALSE)
eco_limpia <- as.character(eco_var)
eco_limpia <- eco_limpia[!is.na(eco_limpia)]
tabla_eco <- table(eco_limpia)
moda_eco <- names(tabla_eco)[which.max(as.numeric(tabla_eco))]
Variable_eco <- c("Ecorregión")
TablaIndicadores_eco <- data.frame(Variable_eco, moda_eco)
colnames(TablaIndicadores_eco) <- c("Variable", "Moda")
# Tabla de Indicadores con gt
tabla_ind_eco_gt <- TablaIndicadores_eco %>%
gt() %>%
tab_header(
title = md("Tabla N° 2. Indicadores estadísticos de la variable ecorregión")
) %>%
cols_align(
align = "center",
columns = everything()
) %>%
tab_options(
table.width = pct(60),
column_labels.font.weight = "bold",
table.font.names = "Open Sans"
)
tabla_ind_eco_gt
| Tabla N° 2. Indicadores estadísticos de la variable ecorregión |
| Variable |
Moda |
| Ecorregión |
Colorado Plateaus |
5. CONCLUSIÓN
cat("La variable Ecorregión tiene como valor más frecuente",moda_eco,".Lo cual resulta favorable para la gestión operativa, ya que permite estandarizar los protocolos de extracción y mitigación ambiental bajo las condiciones geológicas y climáticas específicas predominantes en dicha región.")
## La variable Ecorregión tiene como valor más frecuente Colorado Plateaus .Lo cual resulta favorable para la gestión operativa, ya que permite estandarizar los protocolos de extracción y mitigación ambiental bajo las condiciones geológicas y climáticas específicas predominantes en dicha región.