context("alvm.fit works for cars lm and boston lm across several argument permutations")
set.seed(234)
carslm <- lm(dist ~ speed, data = cars)
myalvms <- list(alvm.fit(carslm, model = "linear", varselect = "qgcv.linear"),
alvm.fit(carslm, model = "cluster", nclust = "elbow.mwd",
varselect = "hettest", hettest = "breusch_pagan"),
alvm.fit(carslm, model = "polynomial"))
myanlvms <- list(anlvm.fit(carslm, g = function(x) x ^ 2,
varselect = "qgcv.linear"),
anlvm.fit(carslm, g = function(x) x ^ 2, cluster = TRUE,
varselect = "hettest", hettest = "breusch_pagan"))
theargs1 <- list("bootsampmethod" = c("pairs", "wild"),
"bootCImethod" = c("pct", "bca", "stdnorm"),
"expand" = c(TRUE, FALSE),
rm_on_constraint = TRUE,
jackknife_point = FALSE,
Brequired = 5L, Bextra = 5L)
theargs2 <- list("bootsampmethod" = c("pairs", "wild"),
"bootCImethod" = c("pct", "bca", "stdnorm"),
"expand" = c(TRUE, FALSE),
rm_nonconverged = FALSE,
jackknife_point = FALSE,
Brequired = 5L, Bextra = 1L)
allargs1 <- expand.grid(theargs1, stringsAsFactors = FALSE)
allargs2 <- expand.grid(theargs2, stringsAsFactors = FALSE)
test_that("carslm ALVMs work with all combinations of formals", {
skip_on_cran()
alvm.cis <- lapply(1:length(myalvms), function(j) {
# print(paste0("j = ", j))
lapply(1:nrow(allargs1), function(i) {
# print(paste0("i = ", i))
do.call(what = avm.ci,
args = append(list("object" = myalvms[[j]]), allargs1[i, ]))
})
})
lapply(1:length(myalvms), function(j) {
lapply(1:nrow(allargs1), function(i) {
expect_true(all(is.finite(alvm.cis[[j]][[i]]$climits)))
})
})
})
test_that("carslm ANLVMs work with all combinations of formals", {
skip_on_cran()
anlvm.cis <- lapply(1:length(myanlvms), function(j) {
# print(paste0("j = ", j))
lapply(1:nrow(allargs2), function(i) {
# print(paste0("i = ", i))
do.call(what = avm.ci,
args = append(list("object" = myanlvms[[j]]), allargs2[i, ]))
})
})
lapply(1:length(myanlvms), function(j) {
lapply(1:nrow(allargs2), function(j) {
expect_true(all(is.finite(anlvm.cis[[j]][[i]]$climits)))
})
})
})
theargs3 <- list(rm_on_constraint = FALSE,
Brequired = 30L, Bextra = 30L,
retune = c(TRUE, FALSE))
theargs4 <- list(rm_nonconverged = FALSE,
Brequired = 30L, Bextra = 30L,
retune = c(TRUE, FALSE))
allargs3 <- expand.grid(theargs3, stringsAsFactors = FALSE)
allargs4 <- expand.grid(theargs4, stringsAsFactors = FALSE)
test_that("carslm ALVMs and ANLVMs work with and without retune", {
skip_on_cran()
alvm.cis <- lapply(1:length(myalvms), function(j) {
# print(paste0("j = ", j))
lapply(1:nrow(allargs3), function(i) {
# print(paste0("i = ", i))
do.call(what = avm.ci,
args = append(list("object" = myalvms[[j]]), allargs3[i, ]))
})
})
lapply(1:length(myalvms), function(j) {
lapply(1:nrow(allargs3), function(i) {
expect_true(all(is.finite(alvm.cis[[j]][[i]]$climits)))
})
})
anlvm.cis <- lapply(1:length(myanlvms), function(j) {
# print(paste0("j = ", j))
lapply(1:nrow(allargs4), function(i) {
# print(paste0("i = ", i))
do.call(what = avm.ci,
args = append(list("object" = myanlvms[[j]]), allargs4[i, ]))
})
})
lapply(1:length(myanlvms), function(j) {
lapply(1:nrow(allargs2), function(j) {
expect_true(all(is.finite(anlvm.cis[[j]][[i]]$climits)))
})
})
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.