getwd()
## [1] "C:/Users/steve/Downloads/Muestreo"
setwd("C:/Users/steve/Downloads/Muestreo")
rm(list = ls())
ls()
## character(0)
# install.packages("survey")
# install.packages("sampling")
library(survey)
## Warning: package 'survey' was built under R version 4.4.3
## Cargando paquete requerido: grid
## Cargando paquete requerido: Matrix
## Cargando paquete requerido: survival
##
## Adjuntando el paquete: 'survey'
## The following object is masked from 'package:graphics':
##
## dotchart
library(sampling)
## Warning: package 'sampling' was built under R version 4.4.3
##
## Adjuntando el paquete: 'sampling'
## The following objects are masked from 'package:survival':
##
## cluster, strata
base <- readRDS("C:/Users/steve/Downloads/Muestreo/Marco.rds")
Filtramos la base para trabajar únicamente con los estudiantes de la ciudad de Quindío.
base_ciudad = subset(base, base$COLE_COD_MCPIO_UBICACION == 63001)
Las variables elegidas son:
# PUNT_MATEMATICAS
# FAMI_TIENECONSOLAVIDEOJUEGOS
Definimos la función para calcular el tamaño de muestra.
n.mas = function(tipo, N, s, e, p, alpha){
if(tipo == "t"){
n = round((qnorm(1-alpha/2)^2 * N^2 * s^2) /
(e^2 + qnorm(1-alpha/2)^2 * N * s^2), 0)
}
if(tipo == "t"){
return(n)
}
if(tipo == "m"){
n = round((qnorm(1-alpha/2)^2 * s^2) /
(e^2 + (qnorm(1-alpha/2)^2 * s^2 / N)), 0)
}
if(tipo == "m"){
return(n)
}
if(tipo == "p"){
n = round((qnorm(1-alpha/2)^2 * (N/(N-1)) * p * (1-p)) /
(e^2 + (qnorm(1-alpha/2)^2 * (N/(N-1)) * p * (1-p) * (1/N))), 0)
if(tipo == "p"){
return(n)
}
}
}
Calculamos el tamaño de muestra para estimar una proporción, usando
p = 0.5, error máximo e = 0.05 y confianza del
95%.
tipo = "p"
N = nrow(base_ciudad)
p = 0.5
e = 0.05
alpha = 0.05
n = n.mas(tipo, N, s, e, p, alpha)
n
## [1] 345
Usamos el método de coordinado negativo.
s.mas = function(base, n, seed){
N = nrow(base)
set.seed(seed)
base$u = runif(nrow(base))
base = base[with(base, order(base$u)), ]
base = base[1:n, ]
base$pik = n/N
return(base)
}
Seleccionamos la muestra.
seed = 123
muestra = s.mas(base_ciudad, n, seed)
Definimos la función salida.
salida = function(est, alpha){
est = as.data.frame(est)
names(est)[2] = "se"
est$cv = 100 * (est$se / est[,1])
est$ic_low = est[,1] - qnorm(1-alpha/2) * est$se
est$ic_upp = est[,1] + qnorm(1-alpha/2) * est$se
return(round(est, 2))
}
Creamos los factores de expansión y convertimos la variable de consola de videojuegos en factor.
N = nrow(base_ciudad)
muestra$Fexp = 1 / muestra$pik
muestra$FAMI_TIENECONSOLAVIDEOJUEGOS = as.factor(muestra$FAMI_TIENECONSOLAVIDEOJUEGOS)
Se define el diseño muestral bajo MAS.
dsgn = svydesign(
id = ~1,
fpc = ~rep(N, n),
data = muestra,
weights = ~Fexp
)
Se estima la media poblacional del puntaje de matemáticas para el Quindío.
est_matematicas = svymean(
~PUNT_MATEMATICAS,
dsgn,
deff = TRUE,
na.rm = TRUE
)
est_matematicas
## mean SE DEff
## PUNT_MATEMATICAS 53.10725 0.65639 1
Organizamos el resultado en una tabla.
alpha = 0.05
tabla_matematicas = salida(est_matematicas, alpha)
tabla_matematicas
## mean se deff cv ic_low ic_upp
## PUNT_MATEMATICAS 53.11 0.66 1 1.24 51.82 54.39
Estimamos la proporción de estudiantes.
est_consola = svymean(
~FAMI_TIENECONSOLAVIDEOJUEGOS,
dsgn,
deff = TRUE,
na.rm = TRUE
)
est_consola
## mean SE DEff
## FAMI_TIENECONSOLAVIDEOJUEGOS 0.0115942 0.0054671 1
## FAMI_TIENECONSOLAVIDEOJUEGOS- 0.0231884 0.0076862 1
## FAMI_TIENECONSOLAVIDEOJUEGOSNo 0.6318841 0.0246311 1
## FAMI_TIENECONSOLAVIDEOJUEGOSSi 0.3333333 0.0240750 1
Organizamos el resultado en una tabla.
tabla_consola = salida(est_consola, alpha)
tabla_consola
## mean se deff cv ic_low ic_upp
## FAMI_TIENECONSOLAVIDEOJUEGOS 0.01 0.01 1 47.15 0.00 0.02
## FAMI_TIENECONSOLAVIDEOJUEGOS- 0.02 0.01 1 33.15 0.01 0.04
## FAMI_TIENECONSOLAVIDEOJUEGOSNo 0.63 0.02 1 3.90 0.58 0.68
## FAMI_TIENECONSOLAVIDEOJUEGOSSi 0.33 0.02 1 7.22 0.29 0.38
Estimamos el promedio de matemáticas para cada categoría de la
variable FAMI_TIENECONSOLAVIDEOJUEGOS.
est_matematicas_consola = svyby(
~PUNT_MATEMATICAS,
~FAMI_TIENECONSOLAVIDEOJUEGOS,
dsgn,
deff = TRUE,
svymean,
na.rm = TRUE
)
est_matematicas_consola
## FAMI_TIENECONSOLAVIDEOJUEGOS PUNT_MATEMATICAS se
## 57.50000 2.0262059
## - - 40.25000 3.8705161
## No No 51.82569 0.8506601
## Si Si 56.27826 1.0007483
## DEff.PUNT_MATEMATICAS
## 0.7521802
## - 0.8775436
## No 0.9983065
## Si 0.9941860
Convertimos el resultado en una tabla y calculamos los intervalos de confianza.
est_matematicas_consola = as.data.frame(est_matematicas_consola)
est_matematicas_consola2 = est_matematicas_consola[, -1]
tabla_matematicas_consola = salida(est_matematicas_consola2, alpha)
tabla_matematicas_consola
## PUNT_MATEMATICAS se DEff.PUNT_MATEMATICAS cv ic_low ic_upp
## 57.50 2.03 0.75 3.52 53.53 61.47
## - 40.25 3.87 0.88 9.62 32.66 47.84
## No 51.83 0.85 1.00 1.64 50.16 53.49
## Si 56.28 1.00 0.99 1.78 54.32 58.24
El tamaño de muestra calculado bajo Muestreo Aleatorio Simple fue de 345 estudiantes.
La media estimada del puntaje de matemáticas para la ciudad Qundío fue:
tabla_matematicas
## mean se deff cv ic_low ic_upp
## PUNT_MATEMATICAS 53.11 0.66 1 1.24 51.82 54.39
La media estimada del puntaje de matemáticas para los estudiantes de la ciudad de Quindío fue de 53.11 puntos. El intervalo de confianza al 95% está entre 51.82 y 54.39 puntos, por lo que el promedio poblacional esperado se encuentra dentro del rango. Además, el coeficiente de variación fue de 1.24%, lo cual evidencia que la estimación es precisa.
La proporción estimada de estudiantes según la tenencia de consola de videojuegos fue:
tabla_consola
## mean se deff cv ic_low ic_upp
## FAMI_TIENECONSOLAVIDEOJUEGOS 0.01 0.01 1 47.15 0.00 0.02
## FAMI_TIENECONSOLAVIDEOJUEGOS- 0.02 0.01 1 33.15 0.01 0.04
## FAMI_TIENECONSOLAVIDEOJUEGOSNo 0.63 0.02 1 3.90 0.58 0.68
## FAMI_TIENECONSOLAVIDEOJUEGOSSi 0.33 0.02 1 7.22 0.29 0.38
En relación con la variable de consola de videojuegos, se estimó que el 63% de los estudiantes de la ciudad no tiene consola en el hogar, mientras que el 33% sí tiene una. Los intervalos de confianza muestran que la proporción de estudiantes sin consola se encuentra entre 58% y 68%, y la proporción de estudiantes con consola entre 29% y 38%.
Se identificaron dos categorías adicionales, una vacía y otra representada por el símbolo -, las cuales podrían corresponder a datos faltantes o respuestas no válidas.
La media de matemáticas por categoría de tenencia de consola fue:
tabla_matematicas_consola
## PUNT_MATEMATICAS se DEff.PUNT_MATEMATICAS cv ic_low ic_upp
## 57.50 2.03 0.75 3.52 53.53 61.47
## - 40.25 3.87 0.88 9.62 32.66 47.84
## No 51.83 0.85 1.00 1.64 50.16 53.49
## Si 56.28 1.00 0.99 1.78 54.32 58.24
Al comparar la media del puntaje de matemáticas en base a la variable de consola de videojuegos, se observa que los estudiantes que sí tienen consola presentan un promedio estimado de 56.28 puntos, mientras que los estudiantes que no tienen consola presentan un promedio de 51.83 puntos. Esto representa una diferencia aproximada de 4.45 puntos a favor del grupo que reporta tener consola.
Sin embargo, los resultados obtenidos pueden deberse a relaciones con otras variables.