library(AER)
library(MASS)
# estimar el modelo restringido y guardar el resultado en `model_res`
# calcular el SSR del modelo restringido y asignarlo a `RSSR`
# estimar el modelo sin restricciones y guardar el resultado en `model_unres`
# calcular el SSR del modelo no restringido y asignarlo a `USSR`
# estimar el modelo restringido y guardar el resultado en `model_res`
model_res <- lm(medv ~ lstat + I(crim + age), data = Boston)
# calcular el SSR del modelo restringido y asignarlo a `RSSR`
RSSR <- sum(model_res$residuals^2)
# estimar el modelo sin restricciones y guardar el resultado en `model_unres`
model_unres <- lm(medv ~ lstat + crim + age, data = Boston)
# calcular el SSR del modelo no restringido y asignarlo a `USSR`
USSR <- sum(model_unres$residuals^2)
test_or({
test_function("lm",
args = c("formula", "data"),
not_called_msg = "Something is wrong.",
args_not_specified_msg = "Something is wrong.")
},{
sol <- ex() %>% override_solution("model_res <- lm(medv ~ lstat + I(crim + age), data = Boston)")
sol %>% check_function("lm") %>% check_arg("formula") %>% check_equal()
},{
sol <- ex() %>% override_solution("model_res <- lm(Boston$medv ~ Boston$lstat + I(Boston$crim + Boston$age))")
sol %>% check_function("lm") %>% check_arg("formula") %>% check_equal()})
test_object("model_res", eval = F)
test_object("RSSR")
test_or({
test_function("lm",
args = c("formula", "data"),
not_called_msg = "Something is wrong.",
args_not_specified_msg = "Something is wrong.")
},{
sol <- ex() %>% override_solution("model_unres <- lm(medv ~ lstat + crim + age, data = Boston)")
sol %>% check_function("lm") %>% check_arg("formula") %>% check_equal()
},{
sol <- ex() %>% override_solution("model_unres <- lm(Boston$medv ~ Boston$lstat + Boston$crim + Boston$age)")
sol %>% check_function("lm") %>% check_arg("formula") %>% check_equal()
})
test_object("model_unres", eval = F)
test_object("USSR")
success_msg("¡Correcto! Se debe tener en cuenta que la SSR del modelo restringido es siempre mayor o igual que la SSR del modelo no restringido.")