Nothing
# Tests for ggplot2 autoplot methods (Feature 2)
test_that("autoplot.matching_result returns ggplot for histogram", {
skip_if_not_installed("ggplot2")
left <- data.frame(id = 1:10, x = rnorm(10))
right <- data.frame(id = 11:20, x = rnorm(10))
result <- match_couples(left, right, vars = "x")
p <- ggplot2::autoplot(result, type = "histogram")
expect_s3_class(p, "gg")
})
test_that("autoplot.matching_result returns ggplot for density", {
skip_if_not_installed("ggplot2")
left <- data.frame(id = 1:10, x = rnorm(10))
right <- data.frame(id = 11:20, x = rnorm(10))
result <- match_couples(left, right, vars = "x")
p <- ggplot2::autoplot(result, type = "density")
expect_s3_class(p, "gg")
})
test_that("autoplot.matching_result returns ggplot for ecdf", {
skip_if_not_installed("ggplot2")
left <- data.frame(id = 1:10, x = rnorm(10))
right <- data.frame(id = 11:20, x = rnorm(10))
result <- match_couples(left, right, vars = "x")
p <- ggplot2::autoplot(result, type = "ecdf")
expect_s3_class(p, "gg")
})
test_that("autoplot.matching_result handles empty result", {
skip_if_not_installed("ggplot2")
left <- data.frame(id = 1:3, x = c(100, 200, 300))
right <- data.frame(id = 4:6, x = c(1, 2, 3))
# greedy_couples returns empty result rather than erroring
result <- greedy_couples(left, right, vars = "x", max_distance = 0.001)
expect_message(ggplot2::autoplot(result), "No matched pairs")
})
test_that("autoplot.balance_diagnostics returns love plot", {
skip_if_not_installed("ggplot2")
set.seed(42)
left <- data.frame(id = 1:20, x = rnorm(20, 0, 1), y = rnorm(20, 0, 1))
right <- data.frame(id = 21:40, x = rnorm(20, 0.3, 1), y = rnorm(20, 0.2, 1))
result <- match_couples(left, right, vars = c("x", "y"))
bal <- balance_diagnostics(result, left, right, vars = c("x", "y"))
p <- ggplot2::autoplot(bal, type = "love")
expect_s3_class(p, "gg")
})
test_that("autoplot.balance_diagnostics returns histogram", {
skip_if_not_installed("ggplot2")
set.seed(42)
left <- data.frame(id = 1:20, x = rnorm(20), y = rnorm(20))
right <- data.frame(id = 21:40, x = rnorm(20), y = rnorm(20))
result <- match_couples(left, right, vars = c("x", "y"))
bal <- balance_diagnostics(result, left, right, vars = c("x", "y"))
p <- ggplot2::autoplot(bal, type = "histogram")
expect_s3_class(p, "gg")
})
test_that("autoplot.balance_diagnostics returns variance plot", {
skip_if_not_installed("ggplot2")
set.seed(42)
left <- data.frame(id = 1:20, x = rnorm(20), y = rnorm(20))
right <- data.frame(id = 21:40, x = rnorm(20), y = rnorm(20))
result <- match_couples(left, right, vars = c("x", "y"))
bal <- balance_diagnostics(result, left, right, vars = c("x", "y"))
p <- ggplot2::autoplot(bal, type = "variance")
expect_s3_class(p, "gg")
})
test_that("autoplot.sensitivity_analysis returns ggplot", {
skip_if_not_installed("ggplot2")
set.seed(42)
left <- data.frame(id = 1:20, x = rnorm(20), outcome = rnorm(20, 1, 1))
right <- data.frame(id = 21:40, x = rnorm(20), outcome = rnorm(20, 0, 1))
result <- match_couples(left, right, vars = "x")
sens <- sensitivity_analysis(result, left, right, outcome_var = "outcome")
p <- ggplot2::autoplot(sens)
expect_s3_class(p, "gg")
})
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.