set.seed(4321)
x <- c(1, 2, 1, 0.5, 1, 10, 1, 0.5, 0.2, 0.05)
test_that("outlier methods work", {
expect_equal(fixed_cutoff(x), x > 2.5 | x < 1 / 2.5)
expect_equal(
quartile_method(x),
x > median(x) + (quantile(x, 0.75) - quantile(x, 0.5)) * 2.5 |
x < median(x) - (quantile(x, 0.5) - quantile(x, 0.25)) * 2.5
)
expect_equal(
quartile_method(x, a = c(0, 1)),
x > median(x) + c((quantile(x, 0.75) - quantile(x, 0.5)), median(x)) * 2.5 |
x < median(x) - c((quantile(x, 0.5) - quantile(x, 0.25)), median(x)) * 2.5
)
expect_equal(
resistant_fences(x),
x > quantile(x, 0.75) + (quantile(x, 0.75) - quantile(x, 0.25)) * 2.5 |
x < quantile(x, 0.25) - (quantile(x, 0.75) - quantile(x, 0.25)) * 2.5
)
expect_true(sum(resistant_fences(x)) <= sum(quartile_method(x)))
expect_equal(robust_z(x), abs(x - median(x)) / mad(x) > 2.5)
expect_equal(tukey_algorithm(integer(0)), logical(0))
expect_equal(tukey_algorithm(2), FALSE)
expect_equal(
tukey_algorithm(seq(0.1, 2, by = 0.2)), c(TRUE, rep(FALSE, 8), TRUE)
)
expect_equal(tukey_algorithm(c(NA, 1, 2, 3)), c(NA, TRUE, FALSE, TRUE))
})
test_that("hb transform works", {
expect_equal(hb_transform(x),
ifelse(x < median(x), 1 - median(x) / x, x / median(x) - 1))
})
test_that("recycling works", {
expect_identical(fixed_cutoff(x, cl = rep(1 / 2.5, 11)), fixed_cutoff(x))
expect_identical(fixed_cutoff(x, cu = rep(2.5, 11)), fixed_cutoff(x))
expect_identical(fixed_cutoff(x, numeric(0)), rep(NA, 10))
expect_identical(robust_z(x, cl = rep(2.5, 11)), robust_z(x))
expect_identical(robust_z(x, cu = rep(2.5, 11)), robust_z(x))
expect_identical(quartile_method(x, cl = rep(2.5, 11)), quartile_method(x))
expect_identical(quartile_method(x, cu = rep(2.5, 11)), quartile_method(x))
expect_identical(quartile_method(x, a = rep(0, 11)), quartile_method(x))
expect_identical(resistant_fences(x, cl = rep(2.5, 11)), resistant_fences(x))
expect_identical(resistant_fences(x, cu = rep(2.5, 11)), resistant_fences(x))
expect_identical(resistant_fences(x, a = rep(0, 11)), resistant_fences(x))
expect_identical(tukey_algorithm(x, cl = rep(2.5, 11)), tukey_algorithm(x))
expect_identical(tukey_algorithm(x, cu = rep(2.5, 11)), tukey_algorithm(x))
expect_identical(tukey_algorithm(x, integer(0)),
replace(rep(NA, 10), c(6, 10), TRUE))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.