Nothing
test_that("summary() prints the multiverse table for a mverse object.", {
mydf <- data.frame(
x = c(1, 2, 3),
y = c(4, 5, 6)
)
mv <- mverse(mydf)
mv %>%
add_mutate_branch(
mutate_branch(x + y, x - y, x * y, name = "m1"),
mutate_branch(x + y, x - y, x * y, name = "m2")
) %>%
add_filter_branch(
filter_branch(x < 0, x > 0, x == 0, name = "f1"),
filter_branch(x > 0, x < 0, x == 0, name = "f2")
)
mtable <- summary(mv)
mtable_expected <- tibble::tibble(
universe = factor(1:(3^4)),
m1_branch = factor(rep(c("m1_1", "m1_2", "m1_3"), each = 3^3)),
m2_branch = factor(rep(rep(c("m2_1", "m2_2", "m2_3"), each = 3^2), 3)),
f1_branch = factor(rep(rep(c("f1_1", "f1_2", "f1_3"), each = 3), 3^2)),
f2_branch = factor(rep(c("f2_1", "f2_2", "f2_3"), 3^3)),
m1_branch_code = factor(
rep(c("x + y", "x - y", "x * y"), each = 3^3),
levels = c("x + y", "x - y", "x * y")
),
m2_branch_code = factor(
rep(rep(c("x + y", "x - y", "x * y"), each = 3^2), 3),
levels = c("x + y", "x - y", "x * y")
),
f1_branch_code = factor(
rep(rep(c("x < 0", "x > 0", "x == 0"), each = 3), 3^2),
levels = c("x < 0", "x > 0", "x == 0")
),
f2_branch_code = factor(
rep(c("x > 0", "x < 0", "x == 0"), 3^3),
levels = c("x > 0", "x < 0", "x == 0")
)
)
expect_equal(nrow(mtable), 3^4)
expect_equal(ncol(mtable), 9)
expect_equal(
names(mtable),
c("universe",
c("m1_branch", "m2_branch",
"f1_branch", "f2_branch",
"m1_branch_code", "m2_branch_code",
"f1_branch_code", "f2_branch_code")
)
)
expect_equal(mtable, mtable_expected)
})
test_that("summary() doesn't truncate long branch options.", {
mydf <- data.frame(col1 = c(1, 2, 3), col2 = 4:6, col3 = 7:9)
mbranch <- mutate_branch(
dplyr::if_else(col1 > 1, "a", dplyr::if_else(col1 == 1, "b", "c"))
)
fbranch <- formula_branch(
cbind(col1, col2 - col1) ~ col3 + col3^2 +
col3^3 + col3^4 + exp(col3 + col3^2),
cbind(col1, col2 - col1) ~ col3 + col3^2 +
col3^3 + col3^4 + exp(col3) + exp(col3^2)
)
mv <- mverse(mydf)
add_mutate_branch(mv, mbranch)
add_formula_branch(mv, fbranch)
expect_true(any(stringr::str_detect(
sapply(unlist(summary(mv)), as.character),
"dplyr::if_else\\(col1 > 1,"
)))
expect_true(any(
stringr::str_detect(
sapply(unlist(summary(mv)), as.character),
"cbind\\(col1, col2 - col1\\)"
)
))
})
test_that("Universe is a categorical variable in the mutiverse table.", {
mydf <- data.frame(
x = c(1, 2, 3),
y = c(4, 5, 6)
)
mv <- mverse(mydf)
mv %>%
add_mutate_branch(
mutate_branch(x + y, x - y, x * y, name = "m1"),
mutate_branch(x + y, x - y, x * y, name = "m2")
) %>%
add_filter_branch(
filter_branch(x > 0, x < 0, x == 0, name = "f1"),
filter_branch(x > 0, x < 0, x == 0, name = "f2")
)
mtable <- summary(mv)
expect_true(is.factor(mtable$universe))
})
test_that(
"summary.lm_mverse() outputs coefficient estimates with 95% confidence
intervals by default.", {
n <- 10
mydf <- data.frame(x1 = 1:n, x2 = sample(1:n)) %>%
dplyr::mutate(y = rnorm(n, x1 + x2))
model_spec <- formula_branch(y ~ 0, y ~ 1, y ~ ., y ~ x1 * x2)
mv <- mverse(mydf) %>%
add_formula_branch(model_spec) %>%
lm_mverse()
smanu <- do.call(dplyr::bind_rows, list(
tibble::tibble(
term = "(None)", estimate = NA, std.error = NA,
statistic = NA, p.value = NA, conf.low = NA, conf.high = NA
),
lm(y ~ 1, data = mydf) %>% broom::tidy(conf.int = TRUE),
lm(y ~ ., data = mydf) %>% broom::tidy(conf.int = TRUE),
lm(y ~ x1 * x2, data = mydf) %>% broom::tidy(conf.int = TRUE)
))
smverse <- summary(mv) %>%
dplyr::select(-c(universe, model_spec_branch, model_spec_branch_code))
expect_equal(smverse, smanu)
}
)
test_that(
"summary.glm_mverse() outputs coefficient estimates with 95% confidence
intervals by default.", {
x <- rnorm(100)
y <- rbinom(100, 1, 1 / (1 + exp(-x)))
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
fml <- family_branch(binomial)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
add_family_branch(fml) %>%
glm_mverse()
smanu <- do.call(dplyr::bind_rows, list(
tibble::tibble(
term = "(None)", estimate = NA, std.error = NA,
statistic = NA, p.value = NA, conf.low = NA, conf.high = NA
),
glm(y ~ 1, data = mydf, family = binomial) %>%
broom::tidy(conf.int = TRUE),
glm(y ~ x, data = mydf, family = binomial) %>%
broom::tidy(conf.int = TRUE)
))
smverse <- summary(mv) %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code,
fml_branch,
fml_branch_code
))
expect_equal(smverse, smanu)
}
)
test_that(
"summary.glm.nb_mverse() outputs coefficient estimates with 95% confidence
intervals by default.", {
x <- rep(1:2, 50)
y <- rnbinom(100, 1, .5)
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
glm.nb_mverse()
smanu <- do.call(dplyr::bind_rows, list(
tibble::tibble(
term = "(None)", estimate = NA, std.error = NA,
statistic = NA, p.value = NA, conf.low = NA, conf.high = NA
),
MASS::glm.nb(y ~ 1, data = mydf) %>% broom::tidy(conf.int = TRUE),
MASS::glm.nb(y ~ x, data = mydf) %>% broom::tidy(conf.int = TRUE)
))
smverse <- summary(mv) %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code
))
expect_equal(smverse, smanu)
}
)
test_that(
"summary.lm_mverse(conf.int = FALSE) outputs coefficient estimates without
any confidence intervals.", {
n <- 10
mydf <- data.frame(x1 = 1:n, x2 = sample(1:n)) %>%
dplyr::mutate(y = rnorm(n, x1 + x2))
model_spec <- formula_branch(y ~ 0, y ~ 1, y ~ ., y ~ x1 * x2)
mv <- mverse(mydf) %>%
add_formula_branch(model_spec) %>%
lm_mverse()
smanu <- do.call(dplyr::bind_rows, list(
tibble::tibble(
term = "(None)", estimate = NA, std.error = NA,
statistic = NA, p.value = NA
),
lm(y ~ 1, data = mydf) %>% broom::tidy(),
lm(y ~ ., data = mydf) %>% broom::tidy(),
lm(y ~ x1 * x2, data = mydf) %>% broom::tidy()
))
smverse <- summary(mv, conf.int = FALSE) %>%
dplyr::select(-c(universe, model_spec_branch, model_spec_branch_code))
expect_equal(smverse, smanu)
}
)
test_that(
"summary.glm_mverse(conf.int = FALSE) outputs coefficient estimates
without any confidence intervals.", {
x <- rnorm(100)
y <- rbinom(100, 1, 1 / (1 + exp(-x)))
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
fml <- family_branch(binomial)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
add_family_branch(fml) %>%
glm_mverse()
smanu <- do.call(dplyr::bind_rows, list(
tibble::tibble(
term = "(None)", estimate = NA, std.error = NA,
statistic = NA, p.value = NA
),
glm(y ~ 1, data = mydf, family = binomial) %>%
broom::tidy(conf.int = FALSE),
glm(y ~ x, data = mydf, family = binomial) %>%
broom::tidy(conf.int = FALSE)
))
smverse <- summary(mv, conf.int = FALSE) %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code,
fml_branch,
fml_branch_code
))
expect_equal(smverse, smanu)
}
)
test_that(
"summary.glm.nb_mverse(conf.int = FALSE) outputs coefficient estimates
without any confidence intervals.", {
x <- rep(1:2, 50)
y <- rnbinom(100, 1, .5)
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
glm.nb_mverse()
smanu <- do.call(dplyr::bind_rows, list(
tibble::tibble(
term = "(None)", estimate = NA, std.error = NA,
statistic = NA, p.value = NA
),
MASS::glm.nb(y ~ 1, data = mydf) %>% broom::tidy(conf.int = FALSE),
MASS::glm.nb(y ~ x, data = mydf) %>% broom::tidy(conf.int = FALSE)
))
smverse <- summary(mv, conf.int = FALSE) %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code
))
expect_equal(smverse, smanu)
}
)
test_that("summary.lm_mverse(output = 'df') outputs degrees of freedom.", {
n <- 10
mydf <- data.frame(x1 = 1:n, x2 = sample(1:n)) %>%
dplyr::mutate(y = rnorm(n, x1 + x2))
model_spec <- formula_branch(y ~ 0, y ~ 1, y ~ ., y ~ x1 * x2)
mv <- mverse(mydf) %>%
add_formula_branch(model_spec) %>%
lm_mverse()
smanu <- do.call(dplyr::bind_rows, list(
as.data.frame(t(summary(lm(y ~ 0, data = mydf))$df)) %>%
dplyr::rename(p = V1, n.minus.p = V2, p.star = V3),
as.data.frame(t(summary(lm(y ~ 1, data = mydf))$df)) %>%
dplyr::rename(p = V1, n.minus.p = V2, p.star = V3),
as.data.frame(t(summary(lm(y ~ ., data = mydf))$df)) %>%
dplyr::rename(p = V1, n.minus.p = V2, p.star = V3),
as.data.frame(t(summary(lm(y ~ x1 * x2, data = mydf))$df)) %>%
dplyr::rename(p = V1, n.minus.p = V2, p.star = V3)
))
smverse2 <- summary(mv, output = "df") %>%
dplyr::select(-c(universe, model_spec_branch, model_spec_branch_code))
expect_equal(smverse2, smanu)
})
test_that("summary.glm_mverse(output = 'df') outputs degrees of freedom.", {
x <- rnorm(100)
y <- rbinom(100, 1, 1 / (1 + exp(-x)))
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
fml <- family_branch(binomial)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
add_family_branch(fml) %>%
glm_mverse()
smanu <- data.frame(rbind(
summary(glm(y ~ 0, data = mydf, family = binomial))$df,
summary(glm(y ~ 1, data = mydf, family = binomial))$df,
summary(glm(y ~ x, data = mydf, family = binomial))$df
))
names(smanu) <- c("rank", "df.residual", "n.coef")
smverse <- summary(mv, output = "df") %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code,
fml_branch,
fml_branch_code
))
expect_equal(smverse, smanu)
}
)
test_that("summary.glm.nb_mverse(output = 'df') outputs degrees of freedom.", {
x <- rep(1:2, 50)
y <- rnbinom(100, 1, .5)
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
glm.nb_mverse()
smanu <- data.frame(rbind(
summary(MASS::glm.nb(y ~ 0, data = mydf))$df,
summary(MASS::glm.nb(y ~ 1, data = mydf))$df,
summary(MASS::glm.nb(y ~ x, data = mydf))$df
))
names(smanu) <- c("rank", "df.residual", "n.coef")
smverse <- summary(mv, output = "df") %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code
))
expect_equal(smverse, smanu)
}
)
test_that("summary.lm_mverse(output = 'r') outputs R squared values.", {
n <- 10
mydf <- data.frame(x1 = 1:n, x2 = sample(1:n)) %>%
dplyr::mutate(y = rnorm(n, x1 + x2))
model_spec <- formula_branch(y ~ 0, y ~ 1, y ~ ., y ~ x1 * x2)
mv <- mverse(mydf) %>%
add_formula_branch(model_spec) %>%
lm_mverse()
smanu <- do.call(dplyr::bind_rows, list(
as.data.frame(t(c(
summary(lm(y ~ 0, data = mydf))$r.squared,
summary(lm(y ~ 0, data = mydf))$adj.r.squared
))) %>%
dplyr::rename(r.squared = V1, adj.r.squared = V2),
as.data.frame(t(c(
summary(lm(y ~ 1, data = mydf))$r.squared,
summary(lm(y ~ 1, data = mydf))$adj.r.squared
))) %>%
dplyr::rename(r.squared = V1, adj.r.squared = V2),
as.data.frame(t(c(
summary(lm(y ~ ., data = mydf))$r.squared,
summary(lm(y ~ ., data = mydf))$adj.r.squared
))) %>%
dplyr::rename(r.squared = V1, adj.r.squared = V2),
as.data.frame(t(c(
summary(lm(y ~ x1 * x2, data = mydf))$r.squared,
summary(lm(y ~ x1 * x2, data = mydf))$adj.r.squared
))) %>%
dplyr::rename(r.squared = V1, adj.r.squared = V2)
))
smverse <- summary(mv, output = "r") %>%
dplyr::select(-c(universe, model_spec_branch, model_spec_branch_code))
smverse2 <- summary(mv, output = "r.squared") %>%
dplyr::select(-c(universe, model_spec_branch, model_spec_branch_code))
expect_equal(smverse, smanu)
expect_equal(smverse2, smanu)
})
test_that("summary.lm_mverse(output = 'f') outputs F statistics.", {
n <- 10
mydf <- data.frame(x1 = 1:n, x2 = sample(1:n)) %>%
dplyr::mutate(y = rnorm(n, x1 + x2))
model_spec <- formula_branch(y ~ 0, y ~ 1, y ~ ., y ~ x1 * x2)
mv <- mverse(mydf) %>%
add_formula_branch(model_spec) %>%
lm_mverse()
smanu <- do.call(dplyr::bind_rows, list(
data.frame(value = NA, numdf = NA, dendf = NA),
data.frame(value = NA, numdf = NA, dendf = NA),
as.data.frame(t(summary(lm(y ~ ., data = mydf))$fstatistic)),
as.data.frame(t(summary(lm(y ~ x1 * x2, data = mydf))$fstatistic))
))
smverse <- summary(mv, output = "f") %>%
dplyr::select(-c(universe, model_spec_branch, model_spec_branch_code))
smverse2 <- summary(mv, output = "fstatistic") %>%
dplyr::select(-c(universe, model_spec_branch, model_spec_branch_code))
expect_equal(smverse, smanu)
expect_equal(smverse2, smanu)
})
test_that("summary.glm_mverse(output = 'de') outputs deviance.", {
x <- rnorm(100)
y <- rbinom(100, 1, 1 / (1 + exp(-x)))
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
fml <- family_branch(binomial)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
add_family_branch(fml) %>%
glm_mverse()
smanu <- rbind(
c(
deviance = summary(
glm(y ~ 0, data = mydf, family = binomial)
)$deviance,
null.deviance = summary(
glm(y ~ 0, data = mydf, family = binomial)
)$null.deviance
),
c(
deviance = summary(
glm(y ~ 1, data = mydf, family = binomial)
)$deviance,
null.deviance = summary(
glm(y ~ 1, data = mydf, family = binomial)
)$null.deviance
),
c(
deviance = summary(
glm(y ~ x, data = mydf, family = binomial)
)$deviance,
null.deviance = summary(
glm(y ~ x, data = mydf, family = binomial)
)$null.deviance
)
)
smverse <- summary(mv, output = "de") %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code,
fml_branch,
fml_branch_code
))
expect_equal(as.matrix(smverse), smanu)
}
)
test_that("summary.glm.nb_mverse(output = 'de') outputs deviance.", {
x <- rep(1:2, 50)
y <- rnbinom(100, 1, .5)
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
glm.nb_mverse()
smanu <- rbind(
c(
deviance = summary(MASS::glm.nb(y ~ 0, data = mydf))$deviance,
null.deviance = summary(MASS::glm.nb(y ~ 0, data = mydf))$null.deviance
),
c(
deviance = summary(MASS::glm.nb(y ~ 1, data = mydf))$deviance,
null.deviance = summary(MASS::glm.nb(y ~ 1, data = mydf))$null.deviance
),
c(
deviance = summary(MASS::glm.nb(y ~ x, data = mydf))$deviance,
null.deviance = summary(MASS::glm.nb(y ~ x, data = mydf))$null.deviance
)
)
smverse <- summary(mv, output = "de") %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code
))
expect_equal(as.matrix(smverse), smanu)
}
)
test_that("summary.lm_mverse(output = 'aic') outputs AIC and BIC statistics.", {
n <- 10
mydf <- data.frame(x1 = 1:n, x2 = sample(1:n)) %>%
dplyr::mutate(y = rnorm(n, x1 + x2))
model_spec <- formula_branch(y ~ 0, y ~ 1, y ~ ., y ~ x1 * x2)
mv <- mverse(mydf) %>%
add_formula_branch(model_spec) %>%
lm_mverse()
smanu <- do.call(rbind, lapply(
list(
lm(y ~ 0, data = mydf),
lm(y ~ 1, data = mydf),
lm(y ~ ., data = mydf),
lm(y ~ x1 * x2, data = mydf)
),
function(x) {
c(
AIC = stats::AIC(x),
BIC = stats::BIC(x)
)
}
))
smverse <- summary(mv, output = "aic") %>%
dplyr::select(-c(universe, model_spec_branch, model_spec_branch_code))
smverse2 <- summary(mv, output = "bic") %>%
dplyr::select(-c(universe, model_spec_branch, model_spec_branch_code))
expect_equal(as.matrix(smverse), smanu)
expect_equal(as.matrix(smverse2), smanu)
})
test_that("summary.glm_mverse(output = 'aic') outputs AIC and BIC statistics.", {
x <- rnorm(100)
y <- rbinom(100, 1, 1 / (1 + exp(-x)))
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
fml <- family_branch(binomial)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
add_family_branch(fml) %>%
glm_mverse()
smanu <- do.call(rbind, lapply(
list(
glm(y ~ 0, data = mydf, family = binomial),
glm(y ~ 1, data = mydf, family = binomial),
glm(y ~ x, data = mydf, family = binomial)
),
function(x) {
c(
AIC = stats::AIC(x),
BIC = stats::BIC(x)
)
}
))
smverse <- summary(mv, output = "aic") %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code,
fml_branch,
fml_branch_code
))
smverse2 <- summary(mv, output = "bic") %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code,
fml_branch,
fml_branch_code
))
expect_equal(as.matrix(smverse), smanu)
expect_equal(as.matrix(smverse2), smanu)
}
)
test_that("summary.glm.nb_mverse(output = 'aic') outputs AIC and BIC statistics.", {
x <- rep(1:2, 50)
y <- rnbinom(100, 1, .5)
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
glm.nb_mverse()
smanu <-do.call(rbind, lapply(
list(
MASS::glm.nb(y ~ 0, data = mydf),
MASS::glm.nb(y ~ 1, data = mydf),
MASS::glm.nb(y ~ x, data = mydf)
),
function(x) {
c(
AIC = stats::AIC(x),
BIC = stats::BIC(x)
)
}
))
smverse <- summary(mv, output = "aic") %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code
))
smverse2 <- summary(mv, output = "bic") %>%
dplyr::select(-c(
universe,
frml_branch,
frml_branch_code
))
expect_equal(as.matrix(smverse), smanu)
expect_equal(as.matrix(smverse2), smanu)
}
)
test_that(
"summary.lm_mverse(output = 'x') throws an invalid output argument error.", {
n <- 10
mydf <- data.frame(x1 = 1:n, x2 = sample(1:n)) %>%
dplyr::mutate(y = rnorm(n, x1 + x2))
model_spec <- formula_branch(y ~ 0, y ~ 1, y ~ ., y ~ x1 * x2)
mv <- mverse(mydf) %>%
add_formula_branch(model_spec) %>%
lm_mverse()
expect_error(
summary(mv, output = "x"),
"Invalid output argument."
)
}
)
test_that(
"summary.glm_mverse(output = 'x') throws an invalid output argument error.", {
x <- rnorm(100)
y <- rbinom(100, 1, 1 / (1 + exp(-x)))
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
fml <- family_branch(binomial)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
add_family_branch(fml) %>%
glm_mverse()
expect_error(
summary(mv, output = "x"),
"Invalid output argument."
)
}
)
test_that(
"summary.glm.nb_mverse(output = 'x') throws an invalid output argument error.", {
x <- rep(1:2, 50)
y <- rnbinom(100, 1, .5)
mydf <- data.frame(x = x, y = y)
frml <- formula_branch(y ~ 0, y ~ 1, y ~ x)
mv <- mverse(mydf) %>%
add_formula_branch(frml) %>%
glm.nb_mverse()
expect_error(
summary(mv, output = "x"),
"Invalid output argument."
)
}
)
test_that("multiverse_tree() expects at least one branch.", {
mydf <- data.frame(x = c(1, 2, 3), y = c(4, 5, 6))
mv <- mverse(mydf)
expect_error(multiverse_tree(mv), "No branch to display in a tree.")
})
test_that("multiverse_tree() outputs a ggplot object.", {
z <- mutate_branch(x, y, name = "z")
w <- mutate_branch(x + y, x - y, name = "w")
mydf <- data.frame(x = c(1, 2, 3), y = c(4, 5, 6))
mv <- mverse(mydf) %>%
add_mutate_branch(z, w)
mtree <- multiverse_tree(mv)
expect_s3_class(mtree, "ggplot")
})
test_that("multiverse_tree() draws a graph with nodes and edges.", {
z <- mutate_branch(x, y, name = "z")
w <- mutate_branch(x + y, x - y, name = "w")
mydf <- data.frame(x = c(1, 2, 3), y = c(4, 5, 6))
mv <- mverse(mydf) %>%
add_mutate_branch(z, w)
mtree <- multiverse_tree(mv)
expect_s3_class(mtree$layers[[1]]$geom, "GeomEdgePath")
expect_s3_class(mtree$layers[[2]]$geom, "GeomPoint")
})
test_that("multiverse_tree() draws a graph with correct data.", {
z <- mutate_branch(x, y, name = "z")
w <- mutate_branch(x + y, x - y, name = "w")
mydf <- data.frame(
u = c(0, 1, 0),
x = c(1, 2, 3),
y = c(4, 5, 6)
)
mv <- mverse(mydf) %>%
add_mutate_branch(z, w)
mtree <- multiverse_tree(mv)
mtree_name <- multiverse_tree(mv, label = "name")
mtree_code <- multiverse_tree(mv, label = "code")
expect_equal(nrow(mtree$data), 7)
expect_equal(nrow(mtree_name$data), 7)
expect_equal(nrow(mtree_code$data), 7)
expect_setequal(
mtree$data$name,
c("Data", "z_1", "z_2", "z_1_w_1", "z_1_w_2", "z_2_w_1", "z_2_w_2")
)
expect_setequal(
mtree_name$data$name,
c("Data", "z_1", "z_2", "z_1_w_1", "z_1_w_2", "z_2_w_1", "z_2_w_2")
)
expect_setequal(
mtree_code$data$name,
c("Data", "x", "y", "x_x + y", "x_x - y", "y_x + y", "y_x - y")
)
f <- formula_branch(y ~ u, covariates = c("z", "w"))
mv <- mverse(mydf) %>%
add_mutate_branch(z, w) %>%
add_formula_branch(f)
mtree <- multiverse_tree(mv, label = "code")
mtree_partial <- multiverse_tree(mv, label = "name",
branches = c("f", "covariate_z"))
expect_equal(nrow(mtree$data), 35)
expect_equal(nrow(mtree_partial$data), 4)
expect_setequal(
mtree_partial$data$name,
c("Data", "f_1", "f_1_include_z", "f_1_exclude_z")
)
})
test_that("multiverse_tree() runs after fitting a lm model.", {
mydf <- data.frame(x = sample.int(25), y = sample.int(25), u = sample.int(25))
w <- mutate_branch(x + y + u, x - y + u)
z <- mutate_branch(x + y < mean(w), x + y > mean(w))
frml <- formula_branch(w ~ x, covariates = c("y"))
mv <- mverse(mydf) %>%
add_mutate_branch(w) %>%
add_formula_branch(frml)
mtree <- multiverse_tree(mv)
mv <- mv %>%
lm_mverse()
mtree_lm <- multiverse_tree(mv)
expect_true(ggplot2::is_ggplot(mtree))
expect_equal(mtree$data$.ggraph.index, mtree_lm$data$.ggraph.index)
expect_equal(mtree$data$.ggraph.orig_index, mtree_lm$data$.ggraph.orig_index)
})
test_that("multiverse_tree() runs after fitting a glm model.", {
mydf <- data.frame(x = rnorm(100), y = sample.int(100) - 50)
p1 <- mutate_branch(1 / (1 + exp(-(x + y / 100))))
p2 <- mutate_branch(1 / (1 + exp(-(x - y / 100))))
z <- mutate_branch(rbinom(100, 1, p1), rbinom(100, 1, p2))
frml <- formula_branch(z ~ x, covariates = "y")
fml <- family_branch(binomial)
mv <- mverse(mydf) %>%
add_mutate_branch(p1, p2, z) %>%
add_formula_branch(frml) %>%
add_family_branch(fml)
mtree <- multiverse_tree(mv)
mv <- mv %>%
glm_mverse()
mtree_glm <- multiverse_tree(mv)
expect_true(ggplot2::is_ggplot(mtree))
expect_equal(mtree$data$.ggraph.index, mtree_glm$data$.ggraph.index)
expect_equal(mtree$data$.ggraph.orig_index, mtree_glm$data$.ggraph.orig_index)
})
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.