Nothing
test_that("Normal distribution", {
# defaults
dist <- dist_normal()
expect_equal(mean(dist), 0)
expect_equal(variance(dist), 1)
# display
expect_s3_class(dist, "distribution")
expect_output(print(dist), "N\\(0, 1\\)")
expect_output(print(dist_normal(numeric())), "<distribution\\[0\\]>")
# error checking
expect_error(
dist_normal(0, -1),
"non-negative"
)
expect_silent(
dist_normal(mu = 0L, sigma = 1L)
)
mu <- rnorm(10)
sigma <- abs(rnorm(10))
dist <- dist_normal(mu, sigma)
# summary statistics
expect_equal(mean(dist), mu)
expect_equal(median(dist), mu)
expect_equal(median(dist[[1]]), mu[[1]])
expect_equal(variance(dist), sigma^2)
# math
expect_equal(mean(dist*3+1), mu*3+1)
expect_equal(variance(dist*3+1), (sigma*3)^2)
expect_equal(mean(dist + dist), mean(dist) + mean(dist))
expect_equal(variance(dist + dist), variance(dist) + variance(dist))
# density
expect_equal(
density(dist, 0),
dnorm(0, mean = mu, sd = sigma)
)
# cdf
expect_equal(
cdf(dist, 5),
pnorm(5, mean = mu, sd = sigma)
)
# quantile
expect_equal(
quantile(dist, 0.1),
qnorm(0.1, mean = mu, sd = sigma)
)
# generate
expect_equal(
{
set.seed(0)
generate(dist, 10)
},
{
set.seed(0)
mapply(function(m, s) rnorm(10, m, s), m = mu, s = sigma, SIMPLIFY = FALSE)
}
)
})
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.