Nothing
skip_on_cran()
test_that("model_parameters - cgam", {
skip_if_not(getRversion() >= "4.0.0")
skip_if_not_installed("cgam")
# cgam -----------------------
data(cubic, package = "cgam")
# model
m_cgam <- cgam::cgam(formula = y ~ cgam::incr.conv(x), data = cubic)
df_cgam <- parameters::model_parameters(m_cgam)
expect_equal(
df_cgam,
structure(
list(
Parameter = "(Intercept)",
Coefficient = 1.187,
SE = 0.3054,
CI = 0.95,
CI_low = 0.569520101908619,
CI_high = 1.80447989809138,
t = 3.8868,
df_error = 39.5,
p = 4e-04
),
row.names = c(NA, -1L),
sigma = 2.15946395506817,
residual_df = 39.5,
pretty_names = c(`(Intercept)` = "(Intercept)"),
ci = 0.95,
verbose = TRUE,
exponentiate = FALSE,
ordinal_model = FALSE,
linear_model = TRUE,
mixed_model = FALSE,
n_obs = 50L,
model_class = "cgam",
bootstrap = FALSE,
iterations = 1000,
robust_vcov = FALSE,
ignore_group = TRUE,
ran_pars = TRUE,
show_summary = FALSE,
log_link = FALSE,
logit_link = FALSE,
pretty_labels = c(`(Intercept)` = "(Intercept)"),
test_statistic = "t-statistic",
log_response = FALSE,
log_predictors = FALSE,
weighted_nobs = 50,
model_formula = "y ~ cgam::incr.conv(x)",
coefficient_name = "Coefficient",
zi_coefficient_name = "Log-Odds",
digits = 2,
p_digits = 3,
footer_digits = 3,
class = c("parameters_model", "see_parameters_model", "data.frame"),
object_name = "m_cgam"
),
tolerance = 0.01
)
})
# cgamm -----------------------
test_that("model_parameters - cgamm", {
skip_if_not(getRversion() >= "4.0.0")
skip_if_not_installed("cgam")
# setup
set.seed(123)
# simulate a balanced data set with 30 clusters
# each cluster has 30 data points
n <- 30
m <- 30
# the standard deviation of between cluster error terms is 1
# the standard deviation of within cluster error terms is 2
sige <- 1
siga <- 2
# generate a continuous predictor
x <- 1:(m * n)
for (i in 1:m) {
x[(n * (i - 1) + 1):(n * i)] <- round(runif(n), 3)
}
# generate a group factor
group <- trunc(0:((m * n) - 1) / n) + 1
# generate the fixed-effect term
mu <- 10 * exp(10 * x - 5) / (1 + exp(10 * x - 5))
# generate the random-intercept term asscosiated with each group
avals <- rnorm(m, 0, siga)
# generate the response
y <- 1:(m * n)
for (i in 1:m) {
y[group == i] <- mu[group == i] + avals[i] + rnorm(n, 0, sige)
}
# use REML method to fit the model
ans <- cgam::cgamm(formula = y ~ cgam::s.incr(x) + (1 | group), reml = TRUE)
df <- suppressWarnings(parameters::model_parameters(ans))
expect_equal(
df,
structure(
list(
Parameter = c("(Intercept)", "cgam::s.incr(x)"),
Coefficient = c(5.5174, NA),
SE = c(0.3631, NA),
CI = c(0.95, NA),
CI_low = c(4.80476838465533, NA),
CI_high = c(6.23003161534467, NA),
`t / F` = c(15.1954, NA),
df = c(NA, 8.4),
df_error = c(890.4, NA),
p = c(0, 0),
Component = c("conditional", "smooth_terms")
),
row.names = c(NA, -2L),
ci = 0.95,
verbose = TRUE,
exponentiate = FALSE,
ordinal_model = FALSE,
linear_model = TRUE,
mixed_model = TRUE,
model_class = c("cgamm", "cgam", "lmer"),
bootstrap = FALSE,
iterations = 1000,
robust_vcov = FALSE,
ignore_group = TRUE,
ran_pars = TRUE,
show_summary = FALSE,
log_link = FALSE,
logit_link = FALSE,
pretty_labels = c(
`(Intercept)` = "(Intercept)",
`cgam::s.incr(x)` = "cgam::s.incr(x)"
),
test_statistic = "t-statistic",
log_response = FALSE,
log_predictors = FALSE,
model_formula = "y ~ cgam::s.incr(x)",
coefficient_name = "Coefficient",
zi_coefficient_name = "Log-Odds",
digits = 2,
p_digits = 3,
footer_digits = 3,
class = c("parameters_model", "see_parameters_model", "data.frame"), object_name = "ans"
),
tolerance = 0.01
)
})
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.