Nothing
skip_if_not_installed("nestedLogit")
skip_if_not_installed("broom")
skip_if_not_installed("car")
skip_if_not_installed("carData")
test_that("model_parameters.nestedLogit", {
data(Womenlf, package = "carData")
comparisons <- nestedLogit::logits(
work = nestedLogit::dichotomy("not.work", working = c("parttime", "fulltime")),
full = nestedLogit::dichotomy("parttime", "fulltime")
)
mnl1 <- nestedLogit::nestedLogit(
partic ~ hincome + children,
dichotomies = comparisons,
data = Womenlf
)
out <- model_parameters(mnl1)
expect_identical(
out$Parameter,
c(
"(Intercept)", "hincome", "childrenpresent", "(Intercept)",
"hincome", "childrenpresent"
)
)
expect_equal(
out$Coefficient,
unname(c(coef(mnl1)[, 1], coef(mnl1)[, 2])),
ignore_attr = TRUE,
tolerance = 1e-3
)
expect_equal(
out$SE,
unname(do.call(rbind, lapply(summary(mnl1), coef))[, "Std. Error"]),
ignore_attr = TRUE,
tolerance = 1e-3
)
expect_equal(
out$CI_low,
c(0.60591, -0.08226, -2.16144, 2.11087, -0.18921, -3.80274),
ignore_attr = TRUE,
tolerance = 1e-3
)
out <- model_parameters(mnl1, ci_method = "wald")
expect_equal(
out$CI_low,
c(0.58367, -0.08108, -2.14847, 1.97427, -0.184, -3.71194),
ignore_attr = TRUE,
tolerance = 1e-3
)
out <- model_parameters(mnl1, exponentiate = TRUE)
expect_equal(
out$Coefficient,
exp(unname(c(coef(mnl1)[, 1], coef(mnl1)[, 2]))),
ignore_attr = TRUE,
tolerance = 1e-3
)
out <- model_parameters(mnl1, vcov = "HC3")
expect_equal(
out$SE,
c(0.41738, 0.02256, 0.29565, 0.76467, 0.0373, 0.56165),
ignore_attr = TRUE,
tolerance = 1e-3
)
out <- model_parameters(mnl1, component = "work")
expect_identical(nrow(out), 3L)
})
test_that("simulate_parameters.nestedLogit", {
skip_if(getRversion() < "4.2.0")
skip_on_os(c("linux", "mac"))
data(Womenlf, package = "carData")
comparisons <- nestedLogit::logits(
work = nestedLogit::dichotomy("not.work", working = c("parttime", "fulltime")),
full = nestedLogit::dichotomy("parttime", "fulltime")
)
mnl1 <- nestedLogit::nestedLogit(
partic ~ hincome + children,
dichotomies = comparisons,
data = Womenlf
)
set.seed(123)
out <- simulate_parameters(mnl1, iterations = 100)
expect_equal(
out$Coefficient,
c(1.35612, -0.04667, -1.59096, 3.45594, -0.10316, -2.69807),
tolerance = 1e-3
)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.