La Encuesta Nacional de Ocupación y Empleo es un proyecto de levantamiento de información estadística laboral regular a cargo del Instituto Nacional de Estadística, Geografía e Infórmatica INEGI de México. Brinda información detallada sobre los trabajadores y es un insumo de primera necesidad para quienes desean investigar los mercados laborales mexicanos.

Mayores detalles técnicos y metodológicos de la encuesta pueden ser encontrados aquí.

Los datos se levantan de forma trimestral, por lo que las bases también corresponden a este periodo de tiempo, estas se encuentran en el apartado de microdatos del proyecto.

Al momento de descargar el trimestre de interés nos encontraremos con cinco tablas (bases) de datos que se listan a continuación:

  1. hogt<MesAño>.<formato de elección> Información sobre el hogar entrevistado.

  2. vivt<MesAño>.<formato de elección> Información sobre la vivienda del hogar entrevistado

  3. sdemt<MesAño>.<formato de elección> Información sociodemográfica

  4. coe1t<MesAño>.<formato de elección> Información sobre ocupación y empleo (parte 1)

  5. coe2t<MesAño>.<formato de elección> Información sobre ocupación y empleo (parte 2)

Así, por ejemplo, la información sobre el segundo trimestre de 2013 (II-2013) descargada en formato de dataBase (.dbf) descargaría un archivo comprimido que contendría las siguientes tablas:

  1. hogt213.dbf

  2. vivt213.dbf

  3. sdemt213.dbf

  4. coe1t213.dbf

  5. coe2t213.dbf

Ahora bien, cuando analizamos el mercado laboral puede ser muy útil agregar toda la información de los trabajadores junto con la información sociodemográfica, estas vienen en tablas separadas y tienen algunas diferencias entre ellas que requieren un procedimiento especial para pegarlas.

Llaves únicas de identificación

En la documentación de la encuesta INEGI establece como construir el identificador único de casos para poder pegar las bases, el mismo está definido por un conjunto de variables registradas en cada base, uniendo todas tendríamos la “llave” que nos permitirá identificar el mismo caso en dos tablas diferentes.

A partir de 2020 hay una modificación en la ENOE, que de ahí en adelante será la nueva ENOE (ENOE_N), no es nuestro interés entrar en los detalles de dicha modificación, en términos generales tanto la ENOE y la ENOE_N son comparables y dan cuenta de los mismos fenómenos.

Sin embargo uno de esos cambios tuvo que ver con las llaves de identificación de casos, de cualquier manera, a continuación proporcionamos el código para construir ambas llaves, en este punto asumimos que las bases ya han sido importadas, si desea información sobre como abrir bases de datos en R-Studio puede consultarlo aquí.

Para la ENOE:

llave<-c("CD_A","ENT","CON","V_SEL","N_HOG", "H_MUD", "N_REN")

Para la ENOE_N:

llave_n<-c("CD_A", "ENT", "CON", "V_SEL", "TIPO", "MES_CAL", "CA", "N_HOG", "H_MUD", "N_REN")

Pasos para pegar las bases de datos

La documentación del INEGI indica 4 pasos para pegar sus bases de datos de forma correcta:

Supongamos que cargamos las bases para el segundo trimestre de 2013 con el siguiente código:

library(foreign)
enoe213_SDEM<-read.dbf("enoe/enoe213/sdemt213.dbf")
enoe213_COE1t<-read.dbf("enoe/enoe213/coe1t213.dbf")
enoe213_COE2t<-read.dbf("enoe/enoe213/coe2t213.dbf")

Paso 1: Eliminar todos los registros en SDEM en los que R_DEF sea diferente de cero, esto excluye todas las entrevistas no logradas.

library(tidyverse)
#Cualquiera de los dos funciona
enoe213_SDEM<-enoe213_SDEM[!(enoe213_SDEM$R_DEF!="00"),]
enoe213_SDEM<-enoe213_SDEM %>% filter(enoe213_SDEM$R_DEF=="00")

Paso 2: Eliminar de SDEMT todo los registros que C_RES =2, que corresponden a la condición de residencia ausente

enoe213_SDEM<-enoe213_SDEM[!(enoe213_SDEM$C_RES=="2"),]

Paso 3: Eliminar a los menores de 12 años y quienes tengan edad no especificada pues las tablas COE1t y COE2t solo se aplican a personas de 12 años o más.

library(dplyr)
enoe213_SDEM<-enoe213_SDEM[!(enoe213_SDEM$EDA %in% c("00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "99")),]

Paso 4: Eliminar las entrevistas incompletas o no logradas de la tabla COE1t (la tabla COE2t no tiene esta variable).

enoe213_COE1t<-enoe213_COE1t[!(enoe213_COE1t$R_DEF!="00"),]

Paso 5: Finalmente, se hace el pegado de las bases, para esto haremos uso de las llaves que definimos antes, dado que son tres tablas se hacen 2 pegados siguiendo el flujo de las llaves establecido por INEGI, primero la SDEMt con COE1t, y esta nueva base con COE2t:

enoe213_coe_sdem<-merge(enoe213_COE1t, enoe213_SDEM, by = llave)
enoe213agr<-merge(enoe213_coe_sdem, enoe213_COE2t, by = llave)

Paso5*: En caso de que estuviéramos analizando periodos de 2020 en adelante, es decir, que correspondan a la ENOE_N, el procedimiento es el mismo excepto en el paso 5, en el que se debe usar la llave_n , por ejemplo, para el tercer trimestre de 2020 sería:

enoe320_coe_sdem<-merge(enoe320_COE1t, enoe320_SDEM, by = llave_n)
enoe320agr<-merge(enoe320_coe_sdem, enoe320_COE2t, by = llave_n)

Si comparamos todas las bases de datos generadas deberíamos tener igual número de casos.