tests/testthat/test_transforms.R

test_that("transformations work as expected", {
  skip_if_not(check_tf_version())


  a <- randn(25, 4)


  r_icloglog <- function(x) {
    1 - exp(-1 * exp(x))
  }

  r_log1pe <- function(x) {
    log1p(exp(x))
  }

  r_imultilogit <- function(x) {
    x <- cbind(x, 0)
    x <- exp(x)
    x <- sweep(x, 1, rowSums(x), "/")
    x
  }

  check_op(pnorm, a, greta_op = iprobit)
  check_op(plogis, a, greta_op = ilogit)
  check_op(r_icloglog, a, greta_op = icloglog)
  check_op(pcauchy, a, greta_op = icauchit)
  check_op(r_log1pe, a, greta_op = log1pe)
  check_op(r_imultilogit, a, greta_op = imultilogit)
})

test_that("imultilogit errors informatively", {
  skip_if_not(check_tf_version())


  x <- ones(3, 4, 3)

  expect_snapshot_error(
    imultilogit(x)
  )

})

Try the greta package in your browser

Any scripts or data that you put into this service are public.

greta documentation built on Sept. 8, 2022, 5:10 p.m.