tests/testthat/test-calc_entropy.R

context("Calculate entropy")

test_that("calc_entropy works in a simple case", {

    p <- list("1"=array(c(1, 0, 0, 0,
                          0, 1, 0, 0,
                          0, 0, 1, 0,
                          0, 0, 0, 1,
                          0.25, 0.25, 0.25, 0.25,
                          0.5, 0.5, 0, 0,
                          0.5, 0, 0.5, 0,
                          0.5, 0, 0, 0.5,
                          0, 0.5, 0.5, 0,
                          0, 0.5, 0, 0.5,
                          0, 0, 0.5, 0.5,
                          0.25, 0.25, 0.5, 0), dim=c(4, 2, 6)))
    p[[1]] <- aperm(p[[1]], c(2,1,3))
    dimnames(p[[1]]) <- list(c("ind1", "ind2"), letters[1:4], LETTERS[1:6])

    expected <- list("1"=cbind(c(0,0),
                                c(0,0),
                                c(2,1),
                                c(1,1),
                                c(1,1),
                                c(1,1.5)))
    dimnames(expected[[1]]) <- dimnames(p[[1]])[c(1,3)]

    expect_equal(calc_entropy(p), expected)

})

Try the qtl2 package in your browser

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

qtl2 documentation built on April 22, 2023, 1:10 a.m.