test_that("`psi_...()` works", {
d <- "euclidean"
diagonal <- TRUE
x <- zoo_simulate(
name = "x",
rows = 20,
seasons = 1,
seed = 1
)
expect_true(zoo::is.zoo(x))
expect_true(nrow(zoo::coredata(x)) == 20)
y <- zoo_simulate(
name = "y",
rows = 30,
seasons = 1,
seed = 2
)
expect_true(zoo::is.zoo(y))
expect_true(nrow(zoo::coredata(y)) == 30)
dist_matrix <- psi_distance_matrix(
x = x,
y = y,
distance = d
)
expect_true(is.matrix(dist_matrix))
expect_true(ncol(dist_matrix) == 20)
expect_true(nrow(dist_matrix) == 30)
cost_matrix <- psi_cost_matrix(
dist_matrix = dist_matrix,
diagonal = diagonal
)
expect_true(is.matrix(cost_matrix))
expect_equal(dim(dist_matrix), dim(cost_matrix))
cost_path <- psi_cost_path(
dist_matrix = dist_matrix,
cost_matrix = cost_matrix,
diagonal = diagonal
)
expect_true(is.data.frame(cost_path))
expect_equal(colnames(cost_path), c("x", "y", "dist", "cost"))
a <- psi_cost_path_sum(path = cost_path)
expect_true(is.numeric(a))
b <- psi_auto_sum(
x = x,
y = y,
distance = d
)
expect_true(is.numeric(b))
psi <- psi_equation(
a = a,
b = b,
diagonal = diagonal
)
expect_true(is.numeric(psi))
#compare with distantia
expect_equal(
distantia(
tsl = list(x = x, y = y),
distance = d
)$psi,
psi
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.