skip_on_os(c("mac", "solaris"))
skip_if_not_installed("MASS")
skip_if_not_installed("datawizard")
skip_if_not_installed("effects")
skip_if_not_installed("emmeans")
test_that("ggpredict, negbin", {
data(efc, package = "ggeffects")
efc$e42dep <- datawizard::to_factor(efc$e42dep)
fit <- MASS::glm.nb(
tot_sc_e ~ neg_c_7 + I(neg_c_7^2) + neg_c_7:e42dep + I(neg_c_7^2):e42dep + c12hour + c172code,
data = efc,
init.theta = 1.133641349,
link = log
)
expect_s3_class(ggpredict(fit, "neg_c_7"), "data.frame")
expect_s3_class(ggeffect(fit, "neg_c_7"), "data.frame")
expect_s3_class(ggemmeans(fit, "neg_c_7"), "data.frame")
expect_s3_class(ggpredict(fit, c("neg_c_7", "e42dep")), "data.frame")
expect_s3_class(ggeffect(fit, c("neg_c_7", "e42dep")), "data.frame")
expect_s3_class(ggemmeans(fit, c("neg_c_7", "e42dep")), "data.frame")
# validate against predict()
pr1 <- predict(fit, newdata = data_grid(fit, "neg_c_7"))
pr2 <- ggpredict(fit, "neg_c_7")
expect_equal(
insight::link_inverse(fit)(pr1),
pr2$predicted,
tolerance = 1e-4,
ignore_attr = TRUE
)
})
test_that("ggpredict, negbin", {
data(efc, package = "ggeffects")
fit <- MASS::glm.nb(
tot_sc_e ~ neg_c_7 + I(neg_c_7^2) + neg_c_7:e42dep + I(neg_c_7^2):e42dep + c12hour + c172code,
data = efc,
init.theta = 1.133641349,
link = log
)
expect_s3_class(ggpredict(fit, "neg_c_7"), "data.frame")
expect_s3_class(ggeffect(fit, "neg_c_7"), "data.frame")
expect_s3_class(ggemmeans(fit, "neg_c_7"), "data.frame")
expect_s3_class(ggpredict(fit, c("neg_c_7", "e42dep")), "data.frame")
expect_s3_class(ggeffect(fit, c("neg_c_7", "e42dep")), "data.frame")
expect_s3_class(ggemmeans(fit, c("neg_c_7", "e42dep")), "data.frame")
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.