class: center middle main-title section-title-8 top-logo .small[ # Muestras probabilÃsticas ] .class-info[ <br> **Sesión N° 2**<br> **EstadÃsitica II** <br> .pull-right.small[ **Profesora** Valentina Andrade de la Horra <br> **Apoyo docente** Nicolás Godoy <br> **Ayudantes** Moira Martinez, Charo Astorga y Alberto Reyes .tiny[Universidad Alberto Hurtado<br> ] ] ] --- class: title title-inv-8 # Contenidos Sesión -- .box-8.medium.sp-after-half[**Conceptos fundamentales**] -- .box-8.medium.sp-after-half[**Muestreo aleatorio simple**] -- .box-8.medium.sp-after-half[**Muestreo complejo**] -- .box-8.medium.sp-after-half[**Muestreo en R**] --- class: center middle main-title section-title-8 top-logo name: basics # Conceptos fundamentales --- class: title title-8 # Tipos de muestras - **ProbabilÃstico**: las unidades de la población tienen una probabilidad conocida de ser seleccionadas en la muestra (mecanismos de selección aleatorios) - **No probabilÃstico**: no se conoce la probabilidad de selección de las unidades de la población (mecanismos de selección no aleatorios) --- class: title title-8 # Muestreo probabilÃstico - Método de selección aleatorio de un subconjunto de la población para hacer inferencia estadÃstica - Inferencia estadÃstica: a partir de estadÃsticos muestrales estimamos los parámetros poblaciones (media, mediana, coeficiente de regresión, etc) -- - Nada asegura que la muestra que obtuvimos represente exactamente a la población, pero gracias a que la muestra es probabilÃstica podemos calcular el error de la estimación --- class: title tile-8 # Conceptos - **Población finita:** Conjunto limitado de unidades, e.g., "centros culturales en Santiago" - **Población objetivo:** descripción semántica de la población, e.g., "la población de centros culturales activos en Santiago durante marzo 2019" - **Marco muestral:** lista de unidades en una población - **Cobertura**: relación entre la población objetivo y el marco muestral, puede ser sub o sobre cobertura. - **Unidad de observación:** el elemento sobre el que se aplicará una medición, e.g., individuos - **Unidad de muestreo:** aquella que puede ser seleccionada para una muestra, e.g., puede que no sea posible seleccionar personas directamente, asà que seleccionamos vivienda --- class: title tile-8 # Error <center> <img src="data:image/png;base64,#https://raw.githubusercontent.com/statistics-R/slides/main/img/12/01.png" alt="drawing" style="width:1000px;"/> </center> --- class: title title-8 # Error de muestreo - Entre más error, más variabilidad del estimador - Menos preciso el estimador - Mecanismo debe asegurar que el error sea mÃnimo y medible --- class: center middle main-title section-title-8 top-logo # Diseños muestrales --- class: title title-8 # Muestreo Aleatorio Simple - Sacar bolas de una tómbola Opciones - **Con reemplazo**: después de sacar bola, se devuelve - **Sin reemplazo**: al seleccionar una bola no puede ser seleccionada denuevo --- .pull-left[ ``` ## id letter ## 1 1 a ## 2 2 b ## 3 3 c ## 4 4 d ## 5 5 e ## 6 6 f ## 7 7 g ## 8 8 h ## 9 9 i ## 10 10 j ``` ] .pull-right[ ``` ## id letter ## 1 3 c ## 2 1 a ## 3 8 h ## 4 10 j ## 5 4 d ``` ] --- class: title title-8 # Dos conceptos 1. **Tamaño de muestra**(*n*): número de observaciones que contiene la selección que se obtiene de la población (*N*) 2. **Número de realizaciones de la muestra**: número de veces que se hace el ejercicio de selección, y se obtiene una muestra distinta --- class: title title-8 # Dos teoremas 1. **Teorema de lÃmite central** 2. **Ley de grandes números** (Práctico) --- class: title title-8 # Tipos de MAS 1. Muestreo estratificado 2. Muestreo por conglomerados -- **3. Muestras complejas** --- class: center middle main-title section-title-8 top-logo # Muestreo estratificado --- class: title title-8 # Muestreo estratificado - Se divide a la población en `\(H\)` estratos - Estratos: hombres/mujeres, regiones de Chile, dependencia de escuela (pública/privada), rural/urbano - Solo podemos estratificar por caracterÃsticas que conocemos para todas la unidades de muestreo **antes de la encuesta** - Buenos estratificadores *reducirán la varianza de la media muestral* - Idealmente los estratos deberÃan estar asociados con el **tema de estudios** --- class: center middle main-title section-title-8 top-logo # Muestreo por conglomerados --- class: title title-8 # Muestreo por conglomerados - Consiste en seleccionar subdiviones que agrupan la població de interés - Ej: manzanas, hogares, escuelas, hospitales - Razón de uso: eficiencia de costos (económicos y viabilidad) - Desventajas: cálculo de varianza, representación diversa de la población y pierde información si miembros de manzana son homogéneos. - Dos grandes tipos - Simple (1 etapa): seleccionar conglomerados y luego todas las unidades de cada uno - Multietápico: 2 o más etapas. --- class: center middle main-title section-title-8 top-logo # Muestreo complejo --- class: title title-8 Se seleccionan conglomerados y luego nuevamente seleccionamos dentro de cada conglomerado Ejemplos - Muestra de manzanas: luego hogares y luego personas en los hogares - Muestra de escuelas: luego cursos en escuelas y luego estudiantes en cursos -- .box-inv-8[Diseño muy común para encuestas a personas en higares en Chile y el mundo] --- class:title title-8 # Análisis > "Los métodos exactos de estimación de la varianza en diseños de muestras estándares, cuando son aplicables, son la mejor forma de estimar la varianza. Sin embargo, los diseños muestrales empleados en la mayorÃa de las encuestas de hogares como la Casen son más complejos que el muestreo aleatorio simple o estratificado, debido a que las estimaciones de interés puede que no sean funciones lineales simples de los valores observados, por lo que la varianza de muestreo no siempre puede expresarse por una f´rmula de forma cerrada como la media de la muestra en el muestreo aleatorio simple o el muestreo estratificado" Manuel metodológico, CASEN 2017 p.126 --- class: title title-8 # Análisis - No considerar el diseño complejo implica subestimar la varianza de los estimadores -- - Aumenta el error tipo I (falsos positivos) -- - Puede llevar a conclusiones erróneas --- class: title title-8 # Ejemplo .box-1[Proporción de la población que ha sido discriminada en su lugar de trabajo (por sexo)]  --- class: center middle main-title section-title-8 top-logo name: basics # El diseño muestral de CASEN 2020 --- class: title title-8 # El diseño muestral de CASEN 2020 Según el [manual metodológico de la encuesta](http://observatorio.ministeriodesarrollosocial.gob.cl/storage/docs/casen/2020/Manual_del_Investigador_Casen_en_Pandemia_2020.pdf), su diseño muestral es .large.box-inv-1[ProbabilÃstico] -- .large.box-inv-2[Estratificado] -- .large.box-inv-3[Multietápico] --- class: title title-8 # ¿Qué significa esto? .medium.box-inv-1[ProbabilÃstico] - Conocemos la probabilidad de selección de cada sujeto (aunque sea !=1) --- class: title title-8 # ¿Qué significa esto? .medium.box-inv-2[Estratificado] - Se establece un criterio para definir estratos (en este caso, comuna/zona), y se escogen aleatoriamente unidades más pequeñas (conglomerados), a partir de las cuales se levanta el muestreo. - En el caso de CASEN, los conglomerados están constituidos por las **manzanas**, *unidades primarias de muestreo* (UPM). --- class: title title-8 # ¿Qué significa esto? .medium.box-inv-3[Multietápico] - La estratificación se realiza en distintos niveles + Primero, se seleccionan aleatoriamente manzanas de cada estrato comuna/zona + Luego, se escogen al azar un número de viviendas de cada manzana + De cada vivienda, se escoge al azar un hogar + De cada hogar, responde (idealmente) el o la jefa de hogar, u otro adulto/a presente --- class: title title-8 # ¿Qué significa esto? De este modo, CASEN 2020 - Es representativa a nivel nacional - Presenta un error muestral de + A nivel nacional, 0.4 puntos porcentuales (pp.) de error absoluto y 3.9% de error relativo + A nivel regional, un error absoluto promedio de 1.6 pp. (con un máximo de 2.1 pp. para Coquimbo) y un error relativo promedio de 15.4% (con un máximo de 30.4% para Magallanes) - Para más información, revisar el [manual metodológico de la encuesta](http://observatorio.ministeriodesarrollosocial.gob.cl/storage/docs/casen/2020/Manual_del_Investigador_Casen_en_Pandemia_2020.pdf). --- class: title title-8 # Recursos para el ejercicio - Este práctico fue trabajado con datos de [CASEN 2020](http://observatorio.ministeriodesarrollosocial.gob.cl/encuesta-casen-en-pandemia-2020). - Los datos ya fueron procesados anteriormente, para centrar el trabajo en el cálculo de parámetros. - Al trabajar con muestras complejas, es **fundamental** asegurarnos de: + Recodificar correctamente los valores de cada variable + Eliminar los valores nulos de los datos + Transformar cada variable a su datatype correspondiente - Pueden revisar el *script de procesamiento* en la carpeta **R** --- class: center middle main-title section-title-8 top-logo name: basics # 1: Flujo del RProject --- class: title title-inv-8 # Etapas del flujo .center[ ] -- - *Hoy* nosotras/os nos centraremos en la parte de **análisis**. --- class: title title-inv-8 # Orden de un script de análisis .center[ ] --- .center[ ] Figura 1: Estudiantes de Análisis de datos en R haciendo los **pasos 4 y 5.** --- class: center middle main-title section-title-8 top-logo # Paso 1: Cargar paquetes --- layout: true class: title title-8 --- # Paso 1: Cargar paquetes ```r pacman::p_load(tidyverse, #Universo de paquetes sjmisc, #Para explorar datos srvyr, #Para trabajar con muestras complejas dplyr, #Para manipular datos tidyr) #Para transformar la estructura de los datos ``` --- layout: false class: center middle section-title section-title-8 animated fadeIn # Paso 2: Importar datos --- # Consideraciones antes de importar datos Para **importar** los datos en R debemos tener en consideración tres cosas: .can-edit.key-likes[ 1. 2. 3. ] --- # Consideraciones antes de importar datos Para **importar** los datos en R debemos tener en consideración tres cosas: 1. Cómo se llaman los datos (en nuestro caso casen_proc); 2. El formato de nuestros datos (en nuestro caso .rds); y 3. El lugar de donde están alojados nuestros datos (en este caso, desde GitHub). --- # Paso 2: Importar datos ```r data <- readRDS(url("https://github.com/learn-R/07-class/blob/main/input/data/casen_proc.rds?raw=true")) ``` --- class: center middle main-title section-title-8 top-logo # Como resultado .large.box-inv-1[Nuevo objeto en el Enviroment] --- class: center middle section-title section-title-8 animated fadeIn # Paso 3: Explorar datos --- class: center title title-8 # Explorar datos ¡Recordemos! .box-inv-1[Para variables categóricas: `frq()`] -- .box-inv-3[Para variables continuas: `descr()`] -- En la tarea de explorar los datos, la librerÃa `sjmisc` será nuestra mejor aliada --- # Explorar datos para procesar ```r ## Variables categóricas frq(data$region) #Examinamos la columna región frq(data$pobreza) #Examinamos la columna pobreza frq(data$sexo) #Examinamos la columna sexo ``` --- # Explorar datos para procesar ```r ## Variables continuas descr(data$exp) #Ponderador regional sum(data$exp) #Total de la población descr(data$varstrat) #Estrato de varianza descr(data$varunit) #Conglomerado de varianza descr(data$ing_tot_hog) #Ingreso total del hogar ``` --- layout: false class: center main-title section-title-8 top-logo # ¡Continuemos con la creación del objeto encuesta! --- layout: false class: center middle main-title section-title-8 top-logo # Pero antes... --- # ¿Qué es un objeto encuesta? .box-inv-1[Es una lista creada con la función `as_survey_design` de `srvyr`] -- .box-inv-2[En este caso, la lista contiene 9 elemento diferentes] -- .box-inv-3[Si bien su contenido es algo crÃptico, crear el objeto encuesta es crucial, pues nos permitirá trabajar con los datos como si fuese un dataframe] --- class: center title title-8 # Creando el objeto encuesta ```r obj_encuesta <- data %>% #Creamos un nuevo objeto encuesta con la información de nuestros datos as_survey_design(ids = conglomerado, #Aplicamos diseño muestral, especificando los ids a partir del conglomerado de varianza, strata = estrato,#strat con los estratos de varianza, fpc = nestrato, #especificando que la estimación está corregida con una población finita (cuando se pueda), weights = ponderador) #y los ponderadores con weights ``` --- class: center title title-8 # Objeto encuesta  --- class:center title title-8 # ¿Por qué trabajar con objetos encuesta? .box-inv-3[Los distintos argumentos especifican elementos del diseño muestral] -- .box-inv-4[AsÃ, podremos realizar estimaciones mucho más precisas] -- .box-inv-5[Además de conocer el nivel de error de estas] --  --- class: center title title-8 # Creando el objeto encuesta En CASEN 2020 no viene incluida la variable fpc, por lo que debemos crearla ```r data <- data %>% group_by(varstrat) %>% #Agrupando por varstrat mutate(stratn = sum(exp)) %>% #Calculamos el total de personas por estrato ungroup() #¡No olvidemos desagrupar! ``` --- class: center title title-8 # Creando el objeto encuesta (¡por fin!) En CASEN 2020 no viene incluida la variable fpc, por lo que debemos crearla ```r casen_regional <- data %>% #Creamos un nuevo objeto llamado casen_regional con la información de data as_survey_design(ids = varunit, #Aplicamos diseño muestral, especificando los ids a partir de varunit, strata = varstrat,#los estratos a partir de varstrat, fpc = stratn, #especificando que la estimación es con una población finita weights = exp) #y los ponderadores con exp ``` --- class: center title title-8 # Las ventajas de `srvyr` .box-inv-5[Existen otras librerÃas que nos permiten crear objetos encuesta] -- .box-inv-6[Sin embargo, nos quedamos con `srvyr` ¿por qué?] -- .box-inv-7[Nos permite dialogar con librerÃas conocidas, como `dplyr`] -- .box-inv-2[¡Sin considerar la simpleza de los cálculos!] --- layout: false class: center main-title section-title-8 top-logo # ¡A calcular! --- class: title title-8 # ¿Qué calcularemos? - `srvyr` provee de muchas funciones para cálculos de diferentes estadÃsticos - No obstante, aquà calcularemos **medias**, **proporciones** y **totales** -- .box-inv-1[Son los estadÃsticos más usuales de reportar] -- .box-inv-2[además de ser **insesgados**] -- - Entonces, emplearemos `survey_mean()`, `survey_prop()` y `survey_total()` --- # Cálculo de medias `survey_mean()` ```r ## Cálculo simple casen_regional %>% #Con casen_regional summarize(ing_medio = srvyr::survey_mean(ing_tot_hog, na.rm=T)) #Calculamos el ingreso medio poblacional ``` --- # Comparamos con el cálculo a nivel muestral ```r data %>% #Con data summarise(ing_medio = mean(ing_tot_hog, na.rm=T)) #Calculamos el ingreso medio muestral ``` --- # Incorporamos Intervalos de Confianza al 95% ```r casen_regional %>%#Con casen_regional summarise(ing_medio = survey_mean(ing_tot_hog, vartype = "ci", na.rm=T)) #Calculamos el #ingreso medio poblacional, #y sus intervalos de confianza ``` ??? x --- # ¿Y si queremos otro nivel de confianza? ```r casen_regional %>% #Con casen_regional summarise(ing_medio95 = survey_mean(ing_tot_hog, vartype = "ci", level = .95, na.rm=T), #Al 95% ing_medio99 = survey_mean(ing_tot_hog, vartype = "ci", level = .99, na.rm=T)) #Al 99% ``` ??? x --- # Agrupamos por sexo (¡como con dplyr!) ```r casen_regional %>% #Con casen_regional group_by(sexo) %>% #Agrupamos por sexo summarise(ing_medio = survey_mean(ing_tot_hog, vartype = "ci", na.rm=T)) #Calculamos el ingreso medio #poblacional, y sus intervalos de #confianza ``` --- # ¡Transformemos en wide con `tidyr`! ```r ing_region <- casen_regional %>% group_by(sexo) %>% #Agrupamos por region summarise(ing_medio = survey_mean(ing_tot_hog, vartype = "ci", na.rm=T)) %>% #Calculamos el ingreso medio poblacional, y sus intervalos de confianza select(sexo, ing_medio) %>% #Seleccionamos region e ing_medio pivot_wider(names_from = "sexo", #Pivoteamos, extrayendo los nombres de las columnas desde region values_from = "ing_medio") #Y los valores desde ing_medio ``` --- # Cálculo de proporciones con `survey_prop()` .box-inv-2[Una diferencia con `survey_mean()`: ¡Debemos agrupar por la(s) variable(s) categórica(s) de interés!] ```r ## Cálculo simple casen_regional %>% #Con casen_regional group_by(pobreza) %>% #Agrupamos por pobreza summarise(prop = survey_prop(na.rm = T)) #Y calculamos las proporciones ``` --- # Transformando a porcentaje (%) con `mutate()` ```r ## Transformando a porcentaje casen_regional %>% #Con casen_regional group_by(pobreza) %>% #Agrupamos por pobreza summarise(prop = survey_prop(na.rm = T))%>% #Calculamos las proporciones mutate(per = prop*100) #Creamos una nueva columna multiplicando las proporciones *100 para obtener porcentajes ``` --- # Incorporamos los totales con `survey_total()` ```r ## Incorporamos cálculo de frecuencias casen_regional %>% #Con casen_regional group_by(pobreza) %>% #Agrupamos por pobreza summarise(prop = survey_prop(na.rm = T), #Calculamos las proporciones total = survey_total(na.rm=T))%>% #Y el total por categorÃas mutate(per = prop*100) #Creamos una nueva columna multiplicando las proporciones *100 para obtener porcentajes ``` --- # Y los Intervalos de Confianza al 95% ```r ## Con Intervalos de confianza al 95% casen_regional %>% #Con casen_regional group_by(pobreza) %>% #Agrupamos por pobreza summarise(prop = survey_prop(vartype = "ci", na.rm = T)) #Incorporamos intervalos de confianza ``` --- # ¡También podemos transformarlos en porcentajes! ```r ## Transformamos el estimador puntual y los lÃmites del intervalo a porcentajes ## Incorporamos el total casen_regional %>% #Con casen_regional group_by(pobreza) %>% #Agrupamos por pobreza summarise(prop = survey_prop(vartype = "ci", na.rm = T), #Calculamos las proporciones con intervalos de confianza total = survey_total(vartype = "ci", na.rm=T)) %>% #Asà como el total por categorÃa mutate(prop = prop*100, #Multiplicamos las proporciones *100, prop_low = prop_low*100, #asà como el lÃmite inferior prop_upp = prop_upp*100) #y superior, para obtener porcentajes ``` --- # Cruzamos variables ```r ## Cruzar dos variables casen_regional %>% #Creamos un objeto llamado pobreza_reg con datos de casen_regional group_by(pobreza, sexo) %>% #Agrupamos por pobreza y sexo summarise(prop = survey_prop(vartype = "ci", na.rm = T), #Calculamos las proporciones con intervalos de confianza total = survey_total(vartype = "ci", na.rm=T)) %>% #Asà como el total por categorÃa mutate(prop = prop*100) ``` --- # ¡Transformemos en wide con `tidyr`! ```r ## Crear objeto wide pobreza_reg <- casen_regional %>% #Creamos un objeto llamado pobreza_reg con datos de casen_regional group_by(region, pobreza) %>% #Agrupamos por region y pobreza summarise(prop = survey_prop(vartype = "ci", na.rm = T), #Calculamos las proporciones con intervalos de confianza total = survey_total(vartype = "ci", na.rm=T)) %>% #Asà como el total por categorÃa mutate(per = prop*100) %>% #Multiplicamos las proporciones *100 para obtener porcentajes select(region, pobreza, per, total) %>% #Seleccionamos region, pobreza, per y total pivot_wider(names_from = "pobreza", #Pivoteamos a lo ancho, extrayendo los nombres de las columnas desde pobreza values_from = c("per", "total")) #y los valores desde per y total ``` --- layout: false class: center section-title section-title-8 animated fadeIn # En sÃntesis -- .box-2.medium.sp-after-half[**Diseño muestral complejo**] -- .box-3.medium.sp-after-half[**El diseño muestral de CASEN 2020**] -- .box-4.medium.sp-after-half[**Creación de objetos encuesta con srvyr**] -- .box-5.medium.sp-after-half[**Estimación, inferencia y tabulado**] --- class: center middle main-title section-title-4 top-logo # ¡Y a no olvidar el flujo para el análisis! -- ## Nos permite hacernos amigas/os más rápido del programa --- .center[ ] --- layout: false .box-1[¿Y eso era?] -- .box-inv-1[¡Ahora si que si! Nos vemos el próximo lunes] .center[ ] --- layout: false class: center middle main-title section-title-8 top-logo .small[ # Muestras probabilÃsticas ] .class-info[ <br> **Sesión N° 1**<br> **EstadÃsitica II** <br> .pull-right.small[ **Profesora** Valentina Andrade de la Horra <br> **Apoyo docente** Nicolás Godoy <br> **Ayudantes** Moira Martinez, Charo Astorga y Alberto Reyes .tiny[Universidad Alberto Hurtado<br> ] ] ]