# get_difference
test_that("get_difference works", {
expect_equal(
get_difference(
data.frame(AUC = c(0.5, 0.8), type = c("a", "b")),
"type", "AUC"
),
0.3
)
expect_error(
get_difference(
data.frame(AUC = c(0.5, 0.8), type = c("a", "b")),
"type", "type"
),
"The metric `type` is not numeric, please check that you specified the right column."
)
})
# shuffle_group
test_that("shuffle_group works", {
set.seed(2022)
df <- structure(
list(
condition = c("a", "a", "b", "b"),
AUC = c(0.2, 0.3, 0.8, 0.9)
),
.Names = c("condition", "AUC"),
row.names = c(NA, -4L),
class = "data.frame"
)
expect_equal(
shuffle_group(df, "condition"),
data.frame(condition = c("b", "b", "a", "a"), AUC = c(0.2, 0.3, 0.8, 0.9))
)
expect_error(
shuffle_group(df, "group"),
"The col_name `group` does not exist in the data frame."
)
})
# permute_p_value
test_that("permute_p_value works", {
set.seed(2022)
df <- structure(
list(
model = c("rf", "rf", "glmnet", "glmnet", "svmRadial", "svmRadial"),
AUC = c(0.2, 0.2, 0.2, 0.2, 0.2, 0.2)
),
.Names = c("model", "AUC"),
row.names = c(NA, -6L),
class = "data.frame"
)
expect_equal(
permute_p_value(df, "AUC", "model", "rf", "glmnet", nperm = 99),
1
)
expect_error(
permute_p_value(df, "auc", "model", "rf", "glmnet", nperm = 99),
"The metric `auc` does not exist in the data."
)
expect_error(
permute_p_value(df, "AUC", "group", "rf", "glmnet", nperm = 10),
"The group_name `group` does not exist in the data."
)
expect_error(
permute_p_value(df, "AUC", "model", "RF", "glmnet", nperm = 10),
"group_1 `RF` does not exist in the data."
)
expect_error(
permute_p_value(df, "AUC", "model", "rf", "logreg", nperm = 10),
"group_2 `logreg` does not exist in the data."
)
})
# compare_models
test_that("compare_models works", {
set.seed(2022)
df <- structure(
list(
model = c("rf", "rf", "glmnet", "glmnet", "svmRadial", "svmRadial"),
AUC = c(0.2, 0.2, 0.2, 0.2, 0.2, 0.2)
),
.Names = c("model", "AUC"),
row.names = c(NA, -6L),
class = "data.frame"
)
expect_equal(
compare_models(df, "AUC", "model", 10),
structure(
list(
group1 = c("glmnet", "rf", "rf"),
group2 = c("svmRadial", "glmnet", "svmRadial"),
p_value = c(1, 1, 1)
),
.Names = c("group1", "group2", "p_value"),
row.names = c(NA, -3L),
class = "data.frame"
)
)
expect_error(
compare_models(df, "auc", "model", 100),
"The metric does not exist in the data."
)
expect_error(
compare_models(df, "AUC", "group", 100),
"The group_name does not exist in the data."
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.