Nothing
test_that("Truncated Normal distributions", {
dist <- dist_truncated(dist_normal(0, 1), -5, 5)
# format
expect_equal(format(dist), sprintf("%s[-5,5]", format(dist_normal(0,1))))
# quantiles
expect_equal(
quantile(dist, 0.1),
-1.28155025885944 #dput(extraDistr::qtnorm(0.1, 0, 1, -5, 5))
)
expect_equal(
quantile(dist, 0.5),
-1.39145821233588e-16 #dput(extraDistr::qtnorm(0.5, 0, 1, -5, 5))
)
# pdf
expect_equal(
density(dist, 0),
0.398942509116427, #dput(extraDistr::dtnorm(0, 0, 1, -5, 5))
)
expect_equal(
density(dist, 3),
0.00443185095273209, #dput(extraDistr::dtnorm(3, 0, 1, -5, 5))
)
# cdf
expect_equal(cdf(dist, 0), 0.5)
expect_equal(
cdf(dist, 3),
0.998650387846205, #dput(extraDistr::ptnorm(3, 0, 1, -5, 5))
)
# F(Finv(a)) ~= a
expect_equal(cdf(dist, quantile(dist, 0.3)), 0.3, tolerance = 1e-6)
# stats
# expect_equal(mean(dist), ???)
# expect_equal(variance(dist), ???)
})
test_that("Truncated Binomial distributions", {
dist <- dist_truncated(dist_binomial(100, 0.83), 76, 86)
# format
expect_equal(format(dist), sprintf("%s[76,86]", format(dist_binomial(100,0.83))))
# quantiles
expect_equal(
quantile(dist, 0.1),
79 #dput(extraDistr::qtbinom(0.1, 100, 0.83, 76, 86))
)
expect_equal(
quantile(dist, 0.5),
82 #dput(extraDistr::qtbinom(0.5, 100, 0.83, 76, 86))
)
# pdf
expect_equal(density(dist, 75), 0)
expect_equal(density(dist, 87), 0)
expect_equal(
density(dist, 80),
0.094154977726162, #dput(extraDistr::dtbinom(80, 100, 0.83, 76, 86))
)
expect_equal(
density(dist, 85),
0.123463609708811, #dput(extraDistr::dtbinom(85, 100, 0.83, 76, 86))
)
# cdf
expect_equal(cdf(dist, 0), 0)
expect_equal(cdf(dist, 76), 0)
expect_equal(cdf(dist, 86), 1)
expect_equal(
cdf(dist, 80),
0.259185477677455, #dput(extraDistr::ptbinom(80, 100, 0.83, 76, 86))
)
# F(Finv(a)) ~= a
expect_equal(cdf(dist, quantile(dist, 0.372)), 0.372, tolerance = 1e-3)
# stats
# expect_equal(mean(dist), ???)
# expect_equal(variance(dist), ???)
})
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.