context("test-cf")
dt <- tsibble::tsibble(idx = 1:25, y = rnorm(25), x = rnorm(25), index = idx)
test_that("ACF", {
cf <- ACF(dt, y)
expect_identical(
cf$acf,
as.numeric(stats::acf(dt$y, plot = FALSE)$acf)[-1]
)
p <- autoplot(cf)
expect_identical(
ggplot2::layer_data(p)$y,
cf$acf
)
expect_s3_class(
ggplot2::ggplot_build(p),
"ggplot_built"
)
expect_message(
NROW(ACF(dt, lag_max = 5)),
"Response variable not specified"
) %>%
expect_identical(5L)
expect_warning(
ACF(dt, y, x),
"ACF currently only supports one column"
)
})
test_that("PACF", {
cf <- PACF(dt, y)
expect_identical(
cf$pacf,
as.numeric(stats::pacf(dt$y, plot = FALSE)$acf)
)
acf <- ACF(dt, y, type = "part") # Testing also partial matching of "partial"
names(acf) <- c("lag", "pacf") # Overwrite names c("lag", "acf")
expect_identical(
as_tsibble(cf),
acf
)
p <- autoplot(cf)
expect_identical(
ggplot2::layer_data(p)$y,
cf$pacf
)
expect_s3_class(
ggplot2::ggplot_build(p),
"ggplot_built"
)
expect_message(
NROW(PACF(dt, lag_max = 5)),
"Response variable not specified"
) %>%
expect_identical(5L)
expect_warning(
PACF(dt, y, x),
"PACF currently only supports one column"
)
})
test_that("CCF", {
cf <- CCF(dt, y, x)
expect_identical(
cf$ccf,
as.numeric(stats::ccf(dt$x, dt$y, plot = FALSE)$acf)
)
p <- autoplot(cf)
expect_identical(
ggplot2::layer_data(p)$y,
cf$ccf
)
expect_s3_class(
ggplot2::ggplot_build(p),
"ggplot_built"
)
expect_message(
NROW(CCF(dt, lag_max = 5)),
"Response variable not specified"
) %>%
expect_identical(11L)
expect_warning(
CCF(dt, y, x, x),
"CCF currently only supports two columns"
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.