TÉCNICA DE MUESTREO ALEATORIA

Muestreo aleatorio simple: todos los elementos de la población tienen la misma probabilidad de ser seleccionados.

n_proporcion_finita <- function(N, e = 0.05, conf = 0.95, p = 0.5){
  z <- qnorm(1 - (1-conf)/2)
  q <- 1 - p
  num <- N * z^2 * p * q
  den <- e^2 * (N - 1) + z^2 * p * q
  ceiling(num / den)
}
set.seed(123)
N <- 1000
n <- n_proporcion_finita(N, e = 0.05, conf = 0.95, p = 0.5)
muestra_ids <- sample(1:N, size = n, replace = FALSE)
muestra_ids
##   [1] 415 463 179 526 195 938 818 118 299 229 244  14 374 665 602 603 768 709
##  [19]  91 953 348 649 355 840  26 519 426 979 766 211 932 590 593 555 871 373
##  [37] 844 143 544 490 621 775 905 937 842  23 923 309 135 821 954 224 166 217
##  [55] 290 581  72 588 575 141 722 865 859 153 294 277 999  41 431  90 316 223
##  [73] 528 116 606 774 747 456 598 854  39 159 752 209 988 994  34 516  13  69
##  [91] 895 755 409 308 278  89 537 291 424 880 286 671 121 110 158  64 483 477
## [109] 480 711  67 663 847  85 165 648  51  74 178 362 236 610 330 726 127 212
## [127] 686 785 814 310 744 243 862 888 792 113 619 893 151 666 614 767 160 391
## [145] 155 974   5 326 784 280 800 789 567 843 238 764 339 920 822 137 455 738
## [163] 560 589  83 696 867 196 769 680 900 926 500 852 344 966 459  20 996 164
## [181]  52 534 177 554  84 523 633 392 302 597 706 864 837 430 710 761 712 428
## [199] 672 250 429 398 928 381 545  40 522 473 200 125 265 959 186 573 252 458
## [217] 152  54 538 235 289 185 765 413 627 794 981 783 205 904 564 857 908 727
## [235] 346 858 468 509  57 457 617 357 279 270 646 347 129 218 618 698 337 976
## [253] 539 975 861 553 724 390 498 222 899 657 421 762 660 163 846 673 578 913
## [271] 878 225 389 117 771 885  55 947

N: tamaño total de la población.

e: error máximo permitido (por defecto 0.05 → 5%).

conf: nivel de confianza (por defecto 0.95 → 95%).

p: proporción esperada (por defecto 0.5, que es el caso más conservador).

N1=1500
n1<-n_proporcion_finita(N = 1500, e = 0.05, conf = 0.95, p = 0.5)
n1
## [1] 306
muestra_ids1 <- sample(1:N1, size = n1, replace = FALSE)
muestra_ids1
##   [1]  597  557  415 1158  957  873  688  757  988  447 1128  821  831  711 1234
##  [16]  349 1425 1282  177  386 1165   24  945 1023 1154  165 1401  170 1469  710
##  [31] 1258  422  508   64   80  548  987  475  291  765 1367 1347  479 1135  791
##  [46]  905 1341  807 1246 1311  292 1250  297  860  605  637 1063 1261 1475  619
##  [61] 1057   83 1420  866  277 1233 1477   76 1118 1054 1241  946 1199  374  323
##  [76]  115 1474  850  608 1382  682  938 1120  397 1172  989  392  593 1362  744
##  [91]  243  106   11  625 1388 1481  403  461  141   31 1139   94   16  178 1482
## [106]  524  924  204 1428  373  646  384 1146  315  259  494 1313 1072 1355 1124
## [121] 1016 1132 1325   10 1473 1304 1372  402 1435 1333  108    8  626  261  541
## [136] 1330  326 1098  282 1291 1286 1393 1243  696  667  990 1143  452  856  622
## [151] 1390 1060 1079 1264  891 1328 1034  665 1129  793  463 1204  278  241 1479
## [166]  679   37  686  566 1327   19  378  549 1268   48 1212  464  393 1163  670
## [181] 1213  311  189   38 1108  319 1371  846  120  712  441 1223  599   72  714
## [196]  677   81 1348  134  424  756    6 1152  879  668   49 1263  193  709  459
## [211]  303 1416  898  190  191  446  119 1083  817   61 1379 1484  930  950  698
## [226]  983 1227  758  993 1270  947  690  251  560  643  545 1421  162  576  168
## [241]  788   78 1343 1309  445  995   95  379  221 1357 1185  620  448  242  927
## [256]  814  926  407  229  785  699 1195 1047  218  648   79 1188  237  579  929
## [271] 1472  493  730  209 1308  877  358 1065  904 1153  848  886  450  396  639
## [286]   41  201   52   67  680  577  457 1015 1044  124  592  740   45   91  653
## [301] 1162  606  127 1032  839  595

¿Puedo estimar correctamente características de toda una población (por ejemplo, el valor promedio de matrícula o el promedio de estrato socioeconómico) usando solo una muestra representativa?

Tomar dos muestras aleatorias simples

library(readxl)
## Warning: package 'readxl' was built under R version 4.5.2
LIC_MATEMATICAS <- read_excel("~/LIC.MATEMATICAS.xlsx")
View(LIC_MATEMATICAS)
set.seed(123)
N1 <- nrow(LIC_MATEMATICAS)
muestra1 <- LIC_MATEMATICAS[sample(1:N1, size = 100, replace = FALSE), ]
muestra2 <- LIC_MATEMATICAS[sample(1:N1, size = 100, replace = FALSE), ]

Calcular estimadores (para cada variable) Se calcula la media y varación a cada muestra.

media_estrato_1 <- mean(muestra1$Estrato)
var_estrato_1 <- var(muestra1$Estrato)
media_matricula_1 <- mean(muestra1$`Valor Matricula`)
var_matricula_1 <- var(muestra1$`Valor Matricula`)

media_estrato_2 <- mean(muestra2$Estrato)
var_estrato_2 <- var(muestra2$Estrato)
media_matricula_2 <- mean(muestra2$`Valor Matricula`)
var_matricula_2 <- var(muestra2$`Valor Matricula`)
media_estrato_poblacion <- mean(LIC_MATEMATICAS$Estrato)
media_matricula_poblacion <- mean(LIC_MATEMATICAS$`Valor Matricula`)

var_estrato_poblacion <- var(LIC_MATEMATICAS$Estrato)
var_matricula_poblacion <- var(LIC_MATEMATICAS$`Valor Matricula`)
comparacion <- data.frame(
  Variable = c("Estrato", "`Valor Matricula`"),
  Media_Poblacional = c(media_estrato_poblacion, media_matricula_poblacion),
  Media_Muestra1 = c(media_estrato_1, media_matricula_1),
  Media_Muestra2 = c(media_estrato_2, media_matricula_2),
  Var_Poblacional = c(var_estrato_poblacion, var_matricula_poblacion),
  Var_Muestra1 = c(var_estrato_1, var_matricula_1),
  Var_Muestra2 = c(var_estrato_2, var_matricula_2)
)
print(comparacion)
##            Variable Media_Poblacional Media_Muestra1 Media_Muestra2
## 1           Estrato      1.514881e+00           1.49           1.55
## 2 `Valor Matricula`      4.719400e+05      470902.09      460733.09
##   Var_Poblacional Var_Muestra1 Var_Muestra2
## 1    2.982854e-01 2.928283e-01 3.308081e-01
## 2    5.737062e+10 6.442474e+10 5.135718e+10

INTERPRETACIÓN GENERAL

1. Variable: Estrato

Media poblacional: 1.5149

Media muestra 1: 1.56

Media muestra 2: 1.60

Las medias muestrales son muy cercanas al valor poblacional (diferencias de solo 0.045 y 0.085). Esto sugiere que la media muestral es un estimador insesgado del promedio poblacional de estrato. Las pequeñas diferencias se deben al azar propio del muestreo.

2. Variable: Valor Matrícula

Media poblacional: 471,940

Media muestra 1: 492,448.43

Media muestra 2: 482,602.4

Ambas medias muestrales se encuentran ligeramente por encima del promedio poblacional.

Diferencia muestra 1: +20,508.43

Diferencia muestra 2: +10,662.4

Esto muestra que los estimadores presentan un leve sesgo positivo, aunque muy pequeño en comparación con el valor total (menos del 5%). Aun así, los resultados son consistentes y tienden al valor real.

Conclusión: Las medias muestrales para Valor Matrícula son estimadores casi insesgados y eficientes, siendo la Muestra 2 la más eficiente (menor error).