Nothing
x1 <- c("1", "2", "1", "1")
x2 <- c("11", "21", "12", "11")
x3 <- c("111", "211", "121", "112")
agg <- aggregation_structure(list(x1, x2, x3))
test_that("updating with a length-0 index makes the weights NA", {
epr <- elemental_index(integer(0), period = gl(1, 0), ea = gl(1, 0))
index <- aggregate(epr, agg)
expect_equal(update(agg, index)[-4], agg[-4])
expect_equal(
weights(update(agg, index), ea_only = FALSE),
list(
level1 = c("1" = NA_real_, "2" = NA),
level2 = c("11" = NA_real_, "21" = NA, "12" = NA),
ea = c("111" = NA_real_, "211" = NA, "121" = NA, "112" = NA)
)
)
})
test_that("an index that doesn't line up with the pias introduces NA", {
epr <- elemental_index(1:2, ea = c("111", "121"), period = gl(1, 2))
index <- aggregate(epr, agg)
expect_equal(
weights(update(agg, index), ea_only = FALSE),
list(
level1 = c("1" = NA_real_, "2" = NA),
level2 = c("11" = NA_real_, "21" = NA, "12" = 2),
ea = c("111" = 1, "211" = NA, "121" = 2, "112" = NA)
)
)
expect_equal(
weights(update(agg, index, r = 0), ea_only = FALSE),
list(
level1 = c("1" = NA_real_, "2" = NA),
level2 = c("11" = NA_real_, "21" = NA, "12" = 1),
ea = c("111" = 1, "211" = NA, "121" = 1, "112" = NA)
)
)
})
test_that("updating works with only EAs", {
# This used to not work
epr <- elemental_index(1:2, ea = c("111", "121"), period = gl(1, 2))
pias <- aggregation_structure(111)
index <- aggregate(epr, pias)
expect_equal(update(pias, index), pias)
})
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.