# A unit test for combinef() function
context("Tests on inputs")
test_that("tests for hts at the bottom level", {
set.seed(1234)
mts <- ts(matrix(5 + sort(rnorm(500)), nrow = 50, ncol = 10))
node.list <- list(3, c(2, 3, 1), c(2, 2, 1, 1, 1, 3))
expect_that(combinef(mts, nodes = node.list, algorithms = "lu"),
throws_error())
})
context("Tests on outputs")
test_that("tests for hts", {
set.seed(1234)
mts <- ts(matrix(5 + sort(rnorm(50)), nrow = 5, ncol = 10))
node.list <- list(3, c(2, 3, 1), c(2, 2, 1, 1, 1, 3))
hts <- hts(mts, nodes = node.list)
allf <- allts(hts)
out1 <- combinef(allf, nodes = node.list, keep = "bottom", algorithms = "lu")
out2 <- combinef(allf, nodes = node.list, keep = "gts", algorithms = "lu")
expect_that(dim(out1), equals(c(5, 10)))
expect_true(is.hts(out2))
})
test_that("tests for gts", {
set.seed(1234)
mts <- ts(5 + matrix(sort(rnorm(270)), nrow = 10, ncol = 27),
start = c(2001, 1), frequency = 12)
g <- matrix(c(rep(1:3, each = 9), rep(c(rep(1, 3), rep(2, 3), rep(3, 3)), 3),
rep(1:3, 9)), nrow = 3, byrow = TRUE)
gts <- gts(mts, groups = g)
out1 <- combinef(allts(gts), groups = gts$groups, keep = "bottom",
algorithms = "lu")
out2 <- combinef(allts(gts), groups = g, keep = "gts", algorithms = "lu")
expect_that(dim(out1), equals(c(10, 27)))
expect_that(dim(out2$bts), equals(c(10, 27)))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.