skip_if_not_installed("panelr")
skip_if_not_installed("clubSandwich")
skip_if_not_installed("car")
data("teen_poverty", package = "panelr")
teen <- panelr::long_panel(teen_poverty, begin = 1, end = 5)
m1 <- panelr::asym(hours ~ lag(pov) + spouse, data = teen, use.wave = TRUE)
test_that("model_info", {
expect_true(model_info(m1)$is_linear)
})
test_that("id_mixed", {
expect_false(is_mixed_model(m1))
})
test_that("find_predictors", {
expect_identical(
find_predictors(m1),
list(conditional = c("pov", "spouse", "wave"))
)
expect_identical(
find_predictors(m1, flatten = TRUE),
c("pov", "spouse", "wave")
)
expect_null(find_predictors(m1, effects = "random"))
})
test_that("find_random", {
expect_null(find_random(m1))
})
test_that("find_response", {
expect_identical(find_response(m1), "hours")
})
test_that("link_inverse", {
expect_equal(link_inverse(m1)(0.2), 0.2, tolerance = 1e-5)
})
test_that("find_formula", {
expect_length(find_formula(m1), 1)
expect_equal(
find_formula(m1),
list(conditional = as.formula("hours ~ lag(pov) + spouse + wave")),
ignore_attr = TRUE
)
})
test_that("find_variables", {
expect_identical(
find_variables(m1),
list(
response = "hours",
conditional = c("pov", "spouse", "wave")
)
)
expect_identical(
find_variables(m1, flatten = TRUE),
c("hours", "pov", "spouse", "wave")
)
})
test_that("n_obs", {
expect_identical(n_obs(m1), 3453L)
})
test_that("linkfun", {
expect_false(is.null(link_function(m1)))
})
test_that("find_parameters", {
expect_identical(
find_parameters(m1),
list(
conditional = c("(Intercept)", "+lag(pov)", "-lag(pov)", "+spouse", "-spouse", "wave")
)
)
expect_identical(nrow(get_parameters(m1)), 6L)
})
test_that("get_parameters", {
expect_equal(
get_parameters(m1),
data.frame(
Parameter = c(
"(Intercept)", "+lag(pov)", "-lag(pov)",
"+spouse", "-spouse", "wave"
),
Estimate = c(
5.07629091766534, -0.695146196282601, 2.74491742707041,
-2.99740859292258, -0.399625620609947, -0.812955475294268
),
stringsAsFactors = FALSE
),
tolerance = 1e-4,
ignore_attr = TRUE
)
})
test_that("get_statistic", {
expect_equal(
get_statistic(m1),
data.frame(
Parameter = c(
"(Intercept)", "+lag(pov)", "-lag(pov)",
"+spouse", "-spouse", "wave"
),
Statistic = c(
3.72593191668147, -0.946399537913606, 3.48400992278831,
-2.27338697388243, -0.160677061930687, -2.3766486580145
),
stringsAsFactors = FALSE
),
tolerance = 1e-4,
ignore_attr = TRUE
)
})
test_that("find_terms", {
expect_identical(
find_terms(m1),
list(
response = "hours",
conditional = c("lag(pov)", "spouse", "wave")
)
)
})
test_that("is_multivariate", {
expect_false(is_multivariate(m1))
})
test_that("find_statistic", {
expect_identical(find_statistic(m1), "t-statistic")
})
test_that("get_vcov", {
skip_on_cran()
v <- get_varcov(m1)
expect_identical(dim(v), c(6L, 6L))
expect_identical(
colnames(v),
c("(Intercept)", "+lag(pov)", "-lag(pov)", "+spouse", "-spouse", "wave")
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.