tests/testthat/test-probs_to_grid.R

context("Reduce probabilities to pseudomarker grid")

test_that("probs_to_grid works", {

    # try it out
    grav2 <- read_cross2(system.file("extdata", "grav2.zip", package="qtl2"))
    probs <- calc_genoprob(grav2, step=1, error_prob=0.002)
    orig_dim <- sapply(probs, dim)
    probs_sub <- probs_to_grid(probs)
    new_dim <- sapply(probs_sub, dim)

    # map at which calculations were done
    map <- attr(probs, "map")

    # reduced dimension match what we'd expect?
    npmar <- 1 + floor(sapply(map, function(a) diff(range(a))))
    expected_dim <- orig_dim; expected_dim[2,] <- npmar
    expect_equal(new_dim, expected_dim)

    # another test
    expected <- probs
    for(i in seq(along=probs))
        expected[[i]] <- probs[[i]][,attr(map[[i]], "grid"),]
    attr(expected, "subset") <- TRUE
    expect_equal(probs_sub, expected)

})
simecek/qtl2 documentation built on May 29, 2019, 10:01 p.m.