Nothing
test_that("odds errors incorrect inputs", {
chk::expect_chk_error(odds(NA))
chk::expect_chk_error(odds("1"))
chk::expect_chk_error(odds(-0.1))
chk::expect_chk_error(odds(1.1))
})
test_that("odds handles edge cases", {
expect_identical(odds(numeric(0)), numeric(0))
expect_identical(odds(NA_real_), NA_real_)
})
test_that("odds works individual numbers", {
expect_equal(odds(0), 0)
expect_equal(odds(0.1), 1 / 9)
expect_equal(odds(1 / 6), 1 / 5)
expect_equal(odds(0.5), 1)
expect_equal(odds(0.9), 9)
expect_equal(odds(1), Inf)
})
test_that("odds works vector", {
expect_equal(odds(c(0, 0.5, 1)), c(0, 1, Inf))
})
test_that("odds works matrix", {
expect_equal(odds(matrix(0.9)), matrix(9))
})
test_that("odds works array", {
expect_equal(odds(array(0.9)), array(9))
})
test_that("`odds<-` works", {
x <- NULL
odds(x) <- 0.5
expect_equal(x, 0.5 / (1 + 0.5))
})
test_that("`odds<-` errors if x is not numeric", {
expect_snapshot(
error = TRUE,
x = {
x <- NULL
odds(x) <- "2"
}
)
})
test_that("`odds<-` errors if x is negative", {
expect_snapshot(
error = TRUE,
x = {
x <- NULL
odds(x) <- -1
}
)
})
test_that("odds_ratio errors incorrect inputs", {
chk::expect_chk_error(odds_ratio(NA, 0.5))
chk::expect_chk_error(odds_ratio("1", 0.5))
chk::expect_chk_error(odds_ratio(-0.1, 0.5))
chk::expect_chk_error(odds_ratio(1.1, 0.5))
})
test_that("odds_ratio handles edge cases", {
expect_identical(odds_ratio(numeric(0), numeric(0)), numeric(0))
expect_identical(odds_ratio(NA_real_, 0.5), NA_real_)
expect_identical(odds_ratio(0.5, NA_real_), NA_real_)
})
test_that("odds_ratio works scalars", {
expect_equal(odds_ratio(0, 0.5), 0)
expect_equal(odds_ratio(0.1, 0.1), 1)
expect_equal(odds_ratio(0.5, 0.9), 1 / 9)
expect_equal(odds_ratio(0.9, 0.5), 9)
expect_equal(odds_ratio(1, 0.5), Inf)
expect_equal(odds_ratio(0.5, 1), 0)
})
test_that("odds_ratio works vector", {
expect_equal(odds_ratio(c(0.1, 0.5), c(0.5, 0.1)), c(1 / 9, 9))
})
test_that("odds_ratio works matrix", {
expect_equal(odds_ratio(matrix(0.9), matrix(0.9)), matrix(1))
})
test_that("odds_ratio works array", {
expect_equal(odds_ratio(array(0.9), array(0.9)), array(1))
})
test_that("odds_ratio errors incorrect inputs", {
chk::expect_chk_error(log_odds_ratio(NA, 0.5))
chk::expect_chk_error(log_odds_ratio("1", 0.5))
chk::expect_chk_error(log_odds_ratio(-0.1, 0.5))
chk::expect_chk_error(log_odds_ratio(1.1, 0.5))
})
test_that("log_odds_ratio handles edge cases", {
expect_identical(log_odds_ratio(numeric(0), numeric(0)), numeric(0))
expect_identical(log_odds_ratio(NA_real_, 0.5), NA_real_)
expect_identical(log_odds_ratio(0.5, NA_real_), NA_real_)
})
test_that("log_odds_ratio works scalars", {
expect_equal(log_odds_ratio(0, 0.5), -Inf)
expect_equal(log_odds_ratio(0.1, 0.1), 0)
expect_equal(log_odds_ratio(0.5, 0.9), log(1 / 9))
expect_equal(log_odds_ratio(0.9, 0.5), log(9))
expect_equal(log_odds_ratio(1, 0.5), Inf)
expect_equal(log_odds_ratio(0.5, 1), -Inf)
})
test_that("log_odds_ratio works vector", {
expect_equal(log_odds_ratio(c(0.1, 0.5), c(0.5, 0.1)), log(c(1 / 9, 9)))
})
test_that("log_odds_ratio works matrix", {
expect_equal(log_odds_ratio(matrix(0.9), matrix(0.9)), matrix(0))
})
test_that("log_odds_ratio works array", {
expect_equal(log_odds_ratio(array(0.9), array(0.9)), array(0))
})
test_that("odds_ratio2 works", {
expect_equal(odds_ratio2(c(0.1, 0.5)), 1 / 9)
expect_equal(odds_ratio2(c(0.5, 0.1)), 9)
})
test_that("log_odds_ratio2 works", {
expect_equal(log_odds_ratio2(c(0.1, 0.5)), log(1 / 9))
expect_equal(log_odds_ratio2(c(0.5, 0.1)), log(9))
})
test_that("odds errors incorrect inputs", {
chk::expect_chk_error(inv_odds(NA))
chk::expect_chk_error(inv_odds("1"))
chk::expect_chk_error(inv_odds(-0.1))
})
test_that("odds handles edge cases", {
expect_identical(inv_odds(numeric(0)), numeric(0))
expect_identical(inv_odds(NA_real_), NA_real_)
})
test_that("inv_odds works individual numbers", {
expect_equal(inv_odds(0), 0)
expect_equal(inv_odds(1 / 9), 0.1)
expect_equal(inv_odds(1 / 5), 1 / 6)
expect_equal(inv_odds(1), 0.5)
expect_equal(inv_odds(9), 0.9)
expect_equal(inv_odds(Inf), NaN)
})
test_that("inv_odds works vector", {
expect_equal(inv_odds(c(0, 1, 9)), c(0, 0.5, 0.9))
})
test_that("inv_odds works matrix", {
expect_equal(inv_odds(matrix(9)), matrix(0.9))
})
test_that("inv_odds works array", {
expect_equal(inv_odds(array(9)), array(0.9))
})
test_that("log_odds errors incorrect inputs", {
chk::expect_chk_error(log_odds(NA))
chk::expect_chk_error(log_odds("1"))
chk::expect_chk_error(log_odds(-0.1))
chk::expect_chk_error(log_odds(1.1))
})
test_that("log_odds handles edge cases", {
expect_identical(log_odds(numeric(0)), numeric(0))
expect_identical(log_odds(NA_real_), NA_real_)
})
test_that("log_odds works individual numbers", {
expect_equal(log_odds(0), -Inf)
expect_equal(log_odds(0.1), -2.1972246)
expect_equal(log_odds(1 / 6), -1.60943791)
expect_equal(log_odds(0.5), 0)
expect_equal(log_odds(0.9), 2.1972246)
expect_equal(log_odds(1), Inf)
})
test_that("log_odds works vector", {
expect_equal(log_odds(c(0, 0.5, 1)), c(-Inf, 0, Inf))
})
test_that("log_odds works matrix", {
expect_equal(log_odds(matrix(0.5)), matrix(0))
})
test_that("log_odds works array", {
expect_equal(log_odds(array(0.5)), array(0))
})
test_that("log_odds<- errors incorrect inputs", {
x <- NULL
chk::expect_chk_error(log_odds(x) <- NULL)
chk::expect_chk_error(log_odds(x) <- -0.1)
})
test_that("log_odds<- handles edge cases", {
x <- NULL
log_odds(x) <- numeric(0)
expect_equal(x, numeric(0))
x <- NULL
log_odds(x) <- Inf
expect_equal(x, NaN)
x <- NULL
log_odds(x) <- NA_real_
expect_equal(x, NA_real_)
})
test_that("log_odds<- works individual numbers", {
x <- NULL
log_odds(x) <- 0
expect_equal(x, -Inf)
x <- NULL
log_odds(x) <- 0.75
expect_equal(x, -0.84729786)
x <- NULL
log_odds(x) <- 0.5
expect_equal(x, -1.0986123)
})
test_that("log_odds<- works vector", {
x <- NULL
log_odds(x) <- c(0, 0.5, 1)
expect_equal(x, c(-Inf, -1.09861229, -0.69314718))
})
test_that("log_odds<- works matrix", {
x <- NULL
log_odds(x) <- matrix(0.5)
expect_equal(x, matrix(-1.0986123))
})
test_that("log_odds<- works array", {
x <- NULL
log_odds(x) <- array(0.5)
expect_equal(x, array(-1.0986123))
})
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.