1. Configuración y Carga de Datos

Para iniciar el procesamiento estadístico, se verifica la estructura global del conjunto de datos correspondientes a los bloques contractuales y arrendamientos de hidrocarburos en el estado de Kansas.

ruta_csv <- "C:/Users/luisq/OneDrive/Desktop/ESTADISTICA/kansas.csv"
datos <- read_delim(ruta_csv, delim = ";", show_col_types = FALSE)
cat("Base de datos cargada correctamente.\n")
## Base de datos cargada correctamente.
cat("Total de registros (filas):", nrow(datos), "\n")
## Total de registros (filas): 104173

2. Extraer Variable

Se realiza el aislamiento de la variable cuantitativa discreta CUMULATIVE_YEAR_STARTED, que representa el año calendario en que inició la producción acumulada de cada arrendamiento de hidrocarburos en Kansas. Sus valores son números enteros contables en el rango 1930–2026. Se filtran únicamente los valores válidos dentro de ese rango.

x_raw <- datos %>%
  mutate(ANIO = suppressWarnings(as.integer(CUMULATIVE_YEAR_STARTED))) %>%
  filter(!is.na(ANIO), ANIO >= 1930, ANIO <= 2026) %>%
  pull(ANIO)

n_unique <- length(unique(x_raw))
cat("Observaciones válidas:", length(x_raw), "\n")
## Observaciones válidas: 89034
cat("Valores únicos:", n_unique, "\n")
## Valores únicos: 95
cat("Como hay", n_unique, "> 10 valores únicos, se agrupa en intervalos de clase (máx. 10).\n")
## Como hay 95 > 10 valores únicos, se agrupa en intervalos de clase (máx. 10).

3. Determinación de los Intervalos

Se aplica el criterio de máximo 10 intervalos para variables discretas agrupadas. Los intervalos se construyen con notación \([L_i, L_s)\) —cerrado a la izquierda, abierto a la derecha—, excepto el último que se cierra en ambos extremos.

\[k = 10 \quad \text{(máximo permitido)} \qquad c = \left\lceil \frac{\max - \min}{k} \right\rceil\]

x         <- x_raw
n         <- length(x)
x_min     <- min(x)
x_max     <- max(x)
rango_val <- x_max - x_min

k_max  <- 10
c_amp  <- ceiling(rango_val / k_max)
k      <- ceiling((rango_val + 1) / c_amp)  # numero real de intervalos necesarios (<= k_max), evita breaks duplicados/invertidos

cat("n =", n, "| k =", k, "| Rango =", rango_val, "| Amplitud c =", c_amp, "\n")
## n = 89034 | k = 10 | Rango = 96 | Amplitud c = 10
lim_inf    <- x_min + (0:(k - 1)) * c_amp
lim_sup    <- lim_inf + c_amp
lim_sup[k] <- x_max + 1
mc         <- floor((lim_inf + lim_sup) / 2)
breaks_vec <- c(lim_inf, lim_sup[k])

4. Tabla de Distribución de Frecuencias

Se calcula la distribución de frecuencias absolutas y relativas para la variable cuantitativa discreta agrupada Año de Inicio de Producción, correspondiente a los arrendamientos de hidrocarburos registrados en Kansas, EE.UU., período 1930–2026.

k_sturges  <- ceiling(1 + 3.322 * log10(n))
c_amp_st   <- ceiling(rango_val / k_sturges)
k_st       <- ceiling((rango_val + 1) / c_amp_st)
lim_inf_st <- x_min + (0:(k_st - 1)) * c_amp_st
lim_sup_st <- lim_inf_st + c_amp_st
lim_sup_st[k_st] <- x_max + 1
mc_st      <- floor((lim_inf_st + lim_sup_st) / 2)
breaks_st  <- c(lim_inf_st, lim_sup_st[k_st])

intervalos_cut_st <- cut(x, breaks = breaks_st, right = FALSE, include.lowest = TRUE)
freq_abs_st       <- as.integer(table(intervalos_cut_st))

li_st <- lim_inf_st
ls_st <- lim_sup_st

hi_dec_st  <- freq_abs_st / n
Ni_asc_st  <- cumsum(freq_abs_st)
Hi_asc_st  <- cumsum(hi_dec_st)
Ni_desc_st <- n - c(0, head(Ni_asc_st, -1))
Hi_desc_st <- 1 - c(0, head(Hi_asc_st, -1))

etiq_st        <- paste0("[", li_st, " – ", ls_st, ")")
etiq_st[k_st]  <- paste0("[", li_st[k_st], " – ", ls_st[k_st] - 1, "]")

tabla_st_df <- data.frame(
  Intervalo = etiq_st,
  MC        = as.integer(mc_st),
  ni        = freq_abs_st,
  hi_pct    = round(hi_dec_st * 100, 2),
  hi_real   = round(hi_dec_st, 4),
  Ni_a      = Ni_asc_st,
  Hi_a      = round(Hi_asc_st, 4),
  Ni_d      = Ni_desc_st,
  Hi_d      = round(Hi_desc_st, 4),
  stringsAsFactors = FALSE
)

total_st_row <- data.frame(
  Intervalo = "TOTAL",
  MC        = NA_integer_,
  ni        = sum(freq_abs_st),
  hi_pct    = round(sum(hi_dec_st) * 100, 2),
  hi_real   = round(sum(hi_dec_st), 4),
  Ni_a      = max(Ni_asc_st),
  Hi_a      = round(max(Hi_asc_st), 4),
  Ni_d      = max(Ni_desc_st),
  Hi_d      = round(max(Hi_desc_st), 4),
  stringsAsFactors = FALSE
)

tabla_sturges_final <- bind_rows(tabla_st_df, total_st_row)

tabla_sturges_final %>%
  gt() %>%
  tab_header(
    title    = md("**Distribución de Frecuencias — Regla de Sturges (referencial)**"),
    subtitle = md(paste0(
      "*Año de Inicio de Producción, Kansas, EE.UU. (n = ",
      format(n, big.mark = ","), ", k = ", k_st, " intervalos)*"
    ))
  ) %>%
  cols_label(
    Intervalo = md("**Intervalo [Li – Ls)**"),
    MC        = md("**Marca de Clase**"),
    ni        = md("**ni (FA)**"),
    hi_pct    = md("**hi %**"),
    hi_real   = md("**hi (decimal)**"),
    Ni_a      = md("**Ni ↑ (FAAa)**"),
    Hi_a      = md("**Hi ↑ (FRAa)**"),
    Ni_d      = md("**Ni ↓ (FAAd)**"),
    Hi_d      = md("**Hi ↓ (FRAd)**")
  ) %>%
  tab_style(
    style = list(cell_fill(color = "#2C2C2C"), cell_text(color = "white", weight = "bold")),
    locations = cells_column_labels()
  ) %>%
  tab_style(
    style = cell_fill(color = "#F5F5F5"),
    locations = cells_body(rows = seq(1, nrow(tabla_sturges_final), by = 2))
  ) %>%
  tab_style(
    style = list(cell_fill(color = "#D6D6D6"), cell_text(weight = "bold")),
    locations = cells_body(rows = Intervalo == "TOTAL", columns = everything())
  ) %>%
  fmt_missing(columns = everything(), missing_text = "—") %>%
  tab_source_note(source_note = md("*Autor: Leslye Quinchiguango*")) %>%
  tab_options(
    table.width                = pct(100),
    heading.title.font.size    = px(15),
    heading.subtitle.font.size = px(11),
    table.font.size            = px(12),
    data_row.padding           = px(4)
  )
Distribución de Frecuencias — Regla de Sturges (referencial)
Año de Inicio de Producción, Kansas, EE.UU. (n = 89,034, k = 17 intervalos)
Intervalo [Li – Ls) Marca de Clase ni (FA) hi % hi (decimal) Ni ↑ (FAAa) Hi ↑ (FRAa) Ni ↓ (FAAd) Hi ↓ (FRAd)
[1930 – 1936) 1933 7 0.01 0.0001 7 0.0001 89034 1.0000
[1936 – 1942) 1939 1509 1.69 0.0169 1516 0.0170 89027 0.9999
[1942 – 1948) 1945 1118 1.26 0.0126 2634 0.0296 87518 0.9830
[1948 – 1954) 1951 2118 2.38 0.0238 4752 0.0534 86400 0.9704
[1954 – 1960) 1957 5690 6.39 0.0639 10442 0.1173 84282 0.9466
[1960 – 1966) 1963 5078 5.70 0.0570 15520 0.1743 78592 0.8827
[1966 – 1972) 1969 8458 9.50 0.0950 23978 0.2693 73514 0.8257
[1972 – 1978) 1975 7063 7.93 0.0793 31041 0.3486 65056 0.7307
[1978 – 1984) 1981 13534 15.20 0.1520 44575 0.5007 57993 0.6514
[1984 – 1990) 1987 9445 10.61 0.1061 54020 0.6067 44459 0.4993
[1990 – 1996) 1993 7557 8.49 0.0849 61577 0.6916 35014 0.3933
[1996 – 2002) 1999 4330 4.86 0.0486 65907 0.7402 27457 0.3084
[2002 – 2008) 2005 8902 10.00 0.1000 74809 0.8402 23127 0.2598
[2008 – 2014) 2011 9043 10.16 0.1016 83852 0.9418 14225 0.1598
[2014 – 2020) 2017 3797 4.26 0.0426 87649 0.9844 5182 0.0582
[2020 – 2026) 2023 1373 1.54 0.0154 89022 0.9999 1385 0.0156
[2026 – 2026] 2026 12 0.01 0.0001 89034 1.0000 12 0.0001
TOTAL 89034 100.00 1.0000 89034 1.0000 89034 1.0000
Autor: Leslye Quinchiguango

Aplicando la Regla de Sturges, con 89034 observaciones corresponderían 17 intervalos de clase. Sin embargo, un desglose tan fino dificulta la lectura visual y el ajuste de los indicadores sobre la distribución. Por ello, se simplifica el análisis a una tabla de máximo 10 intervalos de clase, criterio que conserva representatividad estadística sin sacrificar claridad interpretativa.

Justificación del agrupamiento. Año de Inicio de Producción es discreta, pero al tener 95 valores únicos (más de los 10 recomendados) una tabla de frecuencia simple resultaría demasiado extensa y poco legible. Por ello se agrupa en intervalos de clase, como se hace con variables continuas, únicamente como recurso para resumir la información; su naturaleza discreta se conserva en los límites e indicadores, que siguen siendo enteros.

intervalos_cut <- cut(x, breaks = breaks_vec, right = FALSE, include.lowest = TRUE)
freq_abs       <- as.integer(table(intervalos_cut))

li <- lim_inf
ls <- lim_sup

hi_dec  <- freq_abs / n
Ni_asc  <- cumsum(freq_abs)
Hi_asc  <- cumsum(hi_dec)
Ni_desc <- n - c(0, head(Ni_asc, -1))
Hi_desc <- 1 - c(0, head(Hi_asc, -1))

etiq_intervalo    <- paste0("[", li, " – ", ls, ")")
etiq_intervalo[k] <- paste0("[", li[k], " – ", ls[k] - 1, "]")

tabla_df <- data.frame(
  Intervalo = etiq_intervalo,
  MC        = as.integer(mc),
  ni        = freq_abs,
  hi_pct    = round(hi_dec * 100, 2),
  hi_real   = round(hi_dec, 4),
  Ni_a      = Ni_asc,
  Hi_a      = round(Hi_asc, 4),
  Ni_d      = Ni_desc,
  Hi_d      = round(Hi_desc, 4),
  stringsAsFactors = FALSE
)

total_row <- data.frame(
  Intervalo = "TOTAL",
  MC        = NA_integer_,
  ni        = sum(freq_abs),
  hi_pct    = round(sum(hi_dec) * 100, 2),
  hi_real   = round(sum(hi_dec), 4),
  Ni_a      = max(Ni_asc),
  Hi_a      = round(max(Hi_asc), 4),
  Ni_d      = max(Ni_desc),
  Hi_d      = round(max(Hi_desc), 4),
  stringsAsFactors = FALSE
)

tabla_final_freq <- bind_rows(tabla_df, total_row)

tabla_final_freq %>%
  gt() %>%
  tab_header(
    title    = md("**Tabla N°1: Distribución de Frecuencias**"),
    subtitle = md(paste0(
      "*Variable Cuantitativa Discreta Agrupada: Año de Inicio de Producción, ",
      "arrendamientos de hidrocarburos, Kansas, EE.UU. (n = ",
      format(n, big.mark = ","), " registros válidos)*"
    ))
  ) %>%
  cols_label(
    Intervalo = md("**Intervalo [Li – Ls)**"),
    MC        = md("**Marca de Clase**"),
    ni        = md("**ni (FA)**"),
    hi_pct    = md("**hi %**"),
    hi_real   = md("**hi (decimal)**"),
    Ni_a      = md("**Ni ↑ (FAAa)**"),
    Hi_a      = md("**Hi ↑ (FRAa)**"),
    Ni_d      = md("**Ni ↓ (FAAd)**"),
    Hi_d      = md("**Hi ↓ (FRAd)**")
  ) %>%
  tab_spanner(label = md("**Frecuencia Relativa**"), columns = c(hi_pct, hi_real)) %>%
  tab_spanner(label = md("**Acumulada ↑**"),         columns = c(Ni_a, Hi_a)) %>%
  tab_spanner(label = md("**Acumulada ↓**"),         columns = c(Ni_d, Hi_d)) %>%
  tab_style(
    style = list(
      cell_fill(color = "#2C2C2C"),
      cell_text(color = "white", weight = "bold")
    ),
    locations = cells_column_labels()
  ) %>%
  tab_style(
    style = list(
      cell_fill(color = "#2C2C2C"),
      cell_text(color = "white", weight = "bold")
    ),
    locations = cells_column_spanners()
  ) %>%
  tab_style(
    style = cell_fill(color = "#F5F5F5"),
    locations = cells_body(rows = seq(1, nrow(tabla_final_freq), by = 2))
  ) %>%
  tab_style(
    style = list(
      cell_fill(color = "#D6D6D6"),
      cell_text(weight = "bold")
    ),
    locations = cells_body(
      rows    = Intervalo == "TOTAL",
      columns = everything()
    )
  ) %>%
  fmt_missing(columns = everything(), missing_text = "—") %>%
  tab_source_note(source_note = md("*Autor: Leslye Quinchiguango*")) %>%
  tab_options(
    table.width                = pct(100),
    heading.title.font.size    = px(16),
    heading.subtitle.font.size = px(12),
    table.font.size            = px(13),
    data_row.padding           = px(6)
  )
Tabla N°1: Distribución de Frecuencias
Variable Cuantitativa Discreta Agrupada: Año de Inicio de Producción, arrendamientos de hidrocarburos, Kansas, EE.UU. (n = 89,034 registros válidos)
Intervalo [Li – Ls) Marca de Clase ni (FA)
Frecuencia Relativa
Acumulada ↑
Acumulada ↓
hi % hi (decimal) Ni ↑ (FAAa) Hi ↑ (FRAa) Ni ↓ (FAAd) Hi ↓ (FRAd)
[1930 – 1940) 1935 1080 1.21 0.0121 1080 0.0121 89034 1.0000
[1940 – 1950) 1945 2157 2.42 0.0242 3237 0.0364 87954 0.9879
[1950 – 1960) 1955 7205 8.09 0.0809 10442 0.1173 85797 0.9636
[1960 – 1970) 1965 10328 11.60 0.1160 20770 0.2333 78592 0.8827
[1970 – 1980) 1975 13844 15.55 0.1555 34614 0.3888 68264 0.7667
[1980 – 1990) 1985 19406 21.80 0.2180 54020 0.6067 54420 0.6112
[1990 – 2000) 1995 10447 11.73 0.1173 64467 0.7241 35014 0.3933
[2000 – 2010) 2005 13832 15.54 0.1554 78299 0.8794 24567 0.2759
[2010 – 2020) 2015 9350 10.50 0.1050 87649 0.9844 10735 0.1206
[2020 – 2026] 2023 1385 1.56 0.0156 89034 1.0000 1385 0.0156
TOTAL 89034 100.00 1.0000 89034 1.0000 89034 1.0000
Autor: Leslye Quinchiguango

5. Representación Gráfica

Se presentan cuatro gráficas en escala de grises que permiten analizar visualmente la distribución de la variable cuantitativa discreta agrupada Año de Inicio de Producción.

5.1 Gráfica N°1 — Histograma de Frecuencias Absolutas

grises <- gray(seq(0.25, 0.80, length.out = k))
h_obj  <- hist(x, breaks = breaks_vec, plot = FALSE)

par(mar = c(5, 6, 6, 2))
plot(h_obj,
     col    = grises,
     border = "black",
     freq   = TRUE,
     main   = "",
     xlab   = "",
     ylab   = "",
     las    = 1,
     xaxt   = "n")

axis(1, at = breaks_vec, labels = breaks_vec, las = 2, cex.axis = 0.85)
mtext("Frecuencia Absoluta (ni)",    side = 2, line = 4.5, cex = 1)
mtext("Año de inicio de producción", side = 1, line = 4.2, cex = 1)
mtext(
  "Gráfica N°1: Histograma de Frecuencias Absolutas — Año de Inicio de Producción,\narrendamientos de hidrocarburos, Kansas, EE.UU., período 1930–2026.",
  side = 3, line = 3, cex = 0.9, font = 2
)

5.2 Gráfica N°2 — Polígono de Frecuencias

mc_ext <- c(mc[1] - c_amp, mc, mc[k] + c_amp)
ni_ext <- c(0, freq_abs, 0)

grises <- gray(seq(0.25, 0.80, length.out = k))
h_obj  <- hist(x, breaks = breaks_vec, plot = FALSE)

par(mar = c(5, 6, 6, 2))

plot(h_obj,
     col    = grises,
     border = "black",
     freq   = TRUE,
     main   = "",
     xlab   = "",
     ylab   = "",
     las    = 1,
     xaxt   = "n",
     ylim   = c(0, max(freq_abs) * 1.20))

axis(1, at = breaks_vec, labels = breaks_vec, las = 2, cex.axis = 0.85)

lines(mc_ext, ni_ext, col = "black", lwd = 2, lty = 1)
points(mc_ext, ni_ext, pch = 16, col = "black", cex = 0.9)

mtext("Frecuencia Absoluta (ni)",    side = 2, line = 4.5, cex = 1)
mtext("Año de inicio de producción", side = 1, line = 4.2, cex = 1)
mtext(
  "Gráfica N°2: Polígono de Frecuencias — Año de Inicio de Producción,\narrendamientos de hidrocarburos, Kansas, EE.UU., período 1930–2026.",
  side = 3, line = 3, cex = 0.9, font = 2
)
legend("topright",
       legend = c("Histograma", "Polígono de frecuencias"),
       fill   = c("gray60", NA), border = c("black", NA),
       lty    = c(NA, 1),        pch    = c(NA, 16),
       lwd    = c(NA, 2),        col    = c(NA, "black"),
       bty = "n", cex = 0.85)

5.3 Gráfica N°3 — Boxplot

# Calcular indicadores necesarios para el boxplot
media    <- mean(x)
mediana  <- median(x)
desv_std <- sd(x)
q1       <- as.numeric(quantile(x, 0.25))
q3       <- as.numeric(quantile(x, 0.75))

par(mar = c(5, 4, 6, 2))
boxplot(x,
        col = "gray75", border = "black",
        horizontal = TRUE, outline = TRUE, pch = 16, cex = 0.5,
        main = "", xlab = "", ylab = "")
mtext("Año de inicio de producción", side = 1, line = 3.5, cex = 1)
mtext(
  "Gráfica N°3: Boxplot — Año de Inicio de Producción,\narrendamientos de hidrocarburos, Kansas, EE.UU., período 1930–2026.",
  side = 3, line = 3, cex = 0.9, font = 2
)
text(q1,      1.38, labels = paste0("Q1=", q1),               cex = 0.8)
text(mediana, 0.62, labels = paste0("Me=", as.integer(mediana)), cex = 0.8)
text(q3,      1.38, labels = paste0("Q3=", q3),               cex = 0.8)

5.4 Gráfica N°4 — Ojivas Creciente y Decreciente

x_asc  <- c(li[1], ls)
y_asc  <- c(0, Ni_asc)
x_desc <- c(li[1], ls)
y_desc <- c(n, Ni_desc)

par(mar = c(5, 7, 6, 2))

plot(x_asc, y_asc,
     type = "b", pch = 16, lwd = 2, col = "black",
     ylim = c(0, n * 1.10),
     xlim = c(min(x_asc) - 1, max(x_asc) + 1),
     xlab = "", ylab = "", main = "",
     las  = 1, xaxt = "n")

axis(1, at = breaks_vec, labels = breaks_vec, las = 2, cex.axis = 0.85)

lines(x_desc, y_desc,
      type = "b", pch = 17, lwd = 2, col = "gray40", lty = 2)

grid(col = "gray85", lty = "dotted")

y_cruce <- n / 2
abline(h = y_cruce, col = "gray50", lty = 3, lwd = 1.2)
abline(v = mediana,  col = "gray50", lty = 3, lwd = 1.2)
text(mediana + 0.5, y_cruce + (n * 0.04),
     labels = paste0("Cruce \u2248 Me = ", as.integer(mediana)),
     cex = 0.82, col = "black", font = 3)

legend("right",
       legend = c("Ojiva Creciente (Ni \u2191)", "Ojiva Decreciente (Ni \u2193)"),
       col = c("black", "gray40"), lty = c(1, 2), pch = c(16, 17),
       lwd = 2, bty = "n", cex = 0.9)

mtext("Frecuencia Absoluta Acumulada (Ni)", side = 2, line = 5,   cex = 1)
mtext("Año de inicio de producción",         side = 1, line = 4.2, cex = 1)
mtext(
  "Gráfica N°4: Ojivas Creciente y Decreciente — Año de Inicio de Producción,\narrendamientos de hidrocarburos, Kansas, EE.UU., período 1930–2026.",
  side = 3, line = 3, cex = 0.9, font = 2
)

6. Indicadores Estadísticos

Para la variable cuantitativa discreta agrupada Año de Inicio de Producción, se calculan todos los indicadores de tendencia central, dispersión y forma.

moda_val     <- as.integer(names(sort(table(x), decreasing = TRUE)[1]))
cv           <- (desv_std / media) * 100
iqr_val      <- IQR(x)
asimetria    <- (3 * (media - mediana)) / desv_std
curtosis_val <- (sum((x - media)^4) / length(x)) / (desv_std^4)
lim_inf_out  <- q1 - 1.5 * iqr_val
lim_sup_out  <- q3 + 1.5 * iqr_val
outliers     <- sort(unique(x[x < lim_inf_out | x > lim_sup_out]))
outliers_str <- if (length(outliers) == 0) "Sin valores atípicos" else paste(outliers, collapse = ", ")

indicadores <- data.frame(
  Indicador = c(
    "Tamaño muestral (n)",
    "Mínimo",
    "Máximo",
    "Rango",
    "Media",
    "Mediana",
    "Moda",
    "Varianza (s²)",
    "Desviación estándar (s)",
    "Coef. de variación (CV%)",
    "Cuartil 1 (Q1)",
    "Cuartil 3 (Q3)",
    "Rango intercuartílico (IQR)",
    "Asimetría de Pearson",
    "Curtosis"
  ),
  Valor = c(
    format(n, big.mark = ","),
    as.character(x_min),
    as.character(x_max),
    as.character(rango_val),
    as.character(round(media)),
    as.character(round(mediana)),
    as.character(moda_val),
    as.character(round(desv_std^2, 2)),
    as.character(round(desv_std, 2)),
    paste0(round(cv, 2), "%"),
    as.character(round(q1)),
    as.character(round(q3)),
    as.character(round(iqr_val)),
    as.character(round(asimetria, 4)),
    as.character(round(curtosis_val, 4))
  ),
  stringsAsFactors = FALSE
)

indicadores %>%
  gt() %>%
  tab_header(
    title    = md("**Tabla N°2: Indicadores Estadísticos**"),
    subtitle = md("*Variable Cuantitativa Discreta Agrupada: Año de Inicio de Producción*")
  ) %>%
  cols_label(
    Indicador = md("**Indicador**"),
    Valor     = md("**Valor**")
  ) %>%
  cols_align(align = "left",  columns = Indicador) %>%
  cols_align(align = "right", columns = Valor) %>%
  tab_style(
    style = list(
      cell_fill(color = "#2C2C2C"),
      cell_text(color = "white", weight = "bold")
    ),
    locations = cells_column_labels()
  ) %>%
  tab_style(
    style = cell_borders(sides = "bottom", color = "#E0E0E0", weight = px(1)),
    locations = cells_body(rows = everything())
  ) %>%
  tab_style(
    style = list(
      cell_fill(color = "#F0F0F0"),
      cell_text(weight = "bold")
    ),
    locations = cells_body(
      rows    = Indicador == "Media",
      columns = everything()
    )
  ) %>%
  tab_source_note(source_note = md("*Autor: Leslye Quinchiguango*")) %>%
  tab_options(
    table.width                       = pct(45),
    heading.title.font.size           = px(15),
    heading.subtitle.font.size        = px(11),
    table.font.size                   = px(12),
    data_row.padding                  = px(4),
    column_labels.border.top.width    = px(2),
    column_labels.border.bottom.width = px(2),
    table_body.border.bottom.width    = px(2),
    table.border.top.style            = "hidden",
    table.border.bottom.style         = "hidden"
  )
Tabla N°2: Indicadores Estadísticos
Variable Cuantitativa Discreta Agrupada: Año de Inicio de Producción
Indicador Valor
Tamaño muestral (n) 89,034
Mínimo 1930
Máximo 2026
Rango 96
Media 1985
Mediana 1983
Moda 1957
Varianza (s²) 381.25
Desviación estándar (s) 19.53
Coef. de variación (CV%) 0.98%
Cuartil 1 (Q1) 1970
Cuartil 3 (Q3) 2003
Rango intercuartílico (IQR) 33
Asimetría de Pearson 0.2629
Curtosis 2.3369
Autor: Leslye Quinchiguango

7. Conclusiones

Los valores de Año de Inicio de Producción fluctúan entre 1930 y 2026 (rango = 96 años) y giran en torno a 1983, con una desviación estándar de 19.53 años, sin presencia de valores atípicos, siendo un conjunto de datos homogéneo (CV = 0.98%), cuyos valores se agrupan débilmente (As = 0.26) en la parte baja de Año de Inicio de Producción. Por lo anterior, el comportamiento es beneficioso, ya que los arrendamientos presentan una actividad temporalmente consistente, lo que facilita la planificación operativa de la industria petrolera en Kansas.


Autor: Leslye Quinchiguango — Análisis Estadístico, Kansas Hydrocarbon Leases Dataset