library(foreign)
library(dplyr)
data_URL <- "https://github.com/Jeshua-Romero-Guadarrama/Econoalgoritmia/tree/main/data/fastfood.dta?raw=true"
dat <- read.dta(data_URL)
dat <- dat %>%
mutate(FTE = nmgrs + empft + (0.5 * emppt),
FTE2 = nmgrs2 + empft2 + (0.5 * emppt2))
dat_NJ <- subset(dat, state == 1)
dat_PA <- subset(dat, state == 0)
reg_dat <- data.frame(
rbind(
data.frame(id = dat$sheet,
chain = dat$chain,
state = dat$state,
empl = dat$FTE,
D = 0),
data.frame(id = dat$sheet,
chain = dat$chain,
state = dat$state,
empl = dat$FTE2,
D = 1)))
library(AER)
# estimar el modelo DID
# obtener un resumen robusto del modelo
# estimar el modelo DID
emp_did_mod <- lm(empl ~ D*state, data = reg_dat)
# obtener un resumen robusto del modelo
coeftest(emp_did_mod, vcov. = vcovHC, type = "HC1")
ex() %>% check_predefined_objects("reg_dat")
ex() %>% check_object("emp_did_mod") %>% check_equal()
check_or(
ex() %>%
check_function(., "lm") %>% {
check_arg(., "formula") %>% check_equal()
check_arg(., "data") %>% check_equal()
},
ex() %>%
override_solution("emp_did_mod <- lm(reg_dat$empl ~ reg_dat$D*reg_dat$state)") %>%
check_function("lm") %>% check_arg("formula") %>% check_equal()
)
check_or(
ex() %>% check_function("coeftest") %>% {
check_arg(., "x") %>% check_equal()
check_arg(., "vcov.") %>% check_equal()
},
ex() %>%
override_solution("emp_did_mod <- lm(reg_dat$empl ~ reg_dat$D*reg_dat$state); coeftest(emp_did_mod, vcov. = vcovHC, type = 'HC1')") %>%
check_function("coeftest") %>% {
check_arg(., "x") %>% check_equal()
check_arg(., "vcov.") %>% check_equal()
}
)
success_msg(msg = "¡Correcto! La estimación del coeficiente del término de interacción "D:state" es la estimación del efecto de tratamiento promedio que interesa. La interpretación es que el empleo en Nueva Jersey aumentó en aproximadamente 2.75 FTE debido al aumento del salario mínimo. Sin embargo, no se puede rechazar la hipótesis de que el coeficiente es cero debido a errores estándar diferentes a los presentados en el artículo.")