context("Dist class")
test_that("Distribution can be accessed and correct information is returned", {
obj <- dist_norm
expect_equal(obj$name(), "norm")
expect_equal(obj$pdf(), dnorm)
expect_equal(obj$rng(), rnorm)
expect_equal(obj$link(), list(mean = identity, sd = log))
expect_equal(obj$invlink(), list(mean = identity, sd = exp))
expect_equal(obj$npar(), 2)
expect_equal(obj$parnames(), c("mean", "sd"))
x <- 1:10
expect_equal(obj$parapprox()(x), c(mean(x), sd(x)))
expect_equal(obj$fixed(), c(FALSE, FALSE))
})
test_that("n2w and w2n return right format (dist_norm)", {
par <- list(mean = c(-5, 5), sd = c(2, 10))
wpar <- dist_norm$n2w(par = par)
expect_is(wpar, "numeric")
expect_equal(length(wpar), length(unlist(par)))
par2 <- dist_norm$w2n(wpar = wpar)
expect_is(par2, "list")
expect_equal(length(par2), length(par))
par3 <- dist_norm$w2n(wpar = wpar, as_matrix = TRUE)
expect_is(par3, "matrix")
expect_equal(dim(par3), c(length(par$mean), length(par)))
expect_equal(colnames(par3), names(par))
})
test_that("pdf_apply returns the right output (dist_norm)", {
x <- pi
par <- c(mean = 1, sd = 5)
expect_equal(dist_norm$pdf_apply(x = x, par = par, log = FALSE),
dnorm(x, mean = par[1], sd = par[2], log = FALSE))
expect_equal(dist_norm$pdf_apply(x = x, par = par, log = TRUE),
dnorm(x, mean = par[1], sd = par[2], log = TRUE))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.