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
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
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.
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).