From 1a1038c4cd67c5d22eac483358608f6f32dbc627 Mon Sep 17 00:00:00 2001 From: Brooke Rose <56370609+mrose048@users.noreply.github.com> Date: Tue, 26 Nov 2024 17:42:25 -0800 Subject: [PATCH] Add files via upload test for variable importance function --- tests/testthat/test-var_imp.R | 75 +++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 tests/testthat/test-var_imp.R diff --git a/tests/testthat/test-var_imp.R b/tests/testthat/test-var_imp.R new file mode 100644 index 00000000..cf8f05e7 --- /dev/null +++ b/tests/testthat/test-var_imp.R @@ -0,0 +1,75 @@ +test_that("var_imp", { + require(dplyr) + + data(abies) + data(backg) + set.seed(0) + abies <- abies %>% + dplyr::group_by(pr_ab) %>% + dplyr::slice_sample(prop = .2) + set.seed(0) + backg <- backg %>% + dplyr::group_by(pr_ab) %>% + dplyr::slice_sample(prop = .2) + + abies2 <- part_random( + data = abies, + pr_ab = "pr_ab", + method = c(method = "kfold", folds = 2) + ) + + backg2 <- part_random( + data = backg, + pr_ab = "pr_ab", + method = c(method = "kfold", folds = 2) + ) + + max_t1 <- fit_max( + data = abies2, + response = "pr_ab", + predictors = c("aet", "ppt_jja", "pH", "awc", "depth", "cwd", "tmin"), + predictors_f = c("landform"), + partition = ".part", + background = backg2, + thr = c("max_sens_spec", "equal_sens_spec", "max_sorensen"), + clamp = TRUE, + classes = "default", + pred_type = "cloglog", + regmult = 1 + ) + + + net_t1 <- fit_net( + data = abies2, + response = "pr_ab", + predictors = c("aet", "ppt_jja", "pH", "awc", "depth", "cwd", "tmin"), + predictors_f = c("landform"), + partition = ".part", + thr = c("max_sens_spec", "equal_sens_spec", "max_sorensen") + ) + + svm_f1 <- fit_svm( + data = abies2, + response = "pr_ab", + predictors = c("aet", "ppt_jja", "pH", "awc", "depth", "cwd", "tmin"), + predictors_f = c("landform"), + partition = ".part", + thr = c("max_sens_spec", "equal_sens_spec", "max_sorensen") + ) + + expect_message( + v_ip <- + var_imp( + data = abies2, + response = "pr_ab", + predictors = c("aet", "ppt_jja", "pH", "awc", "depth", "cwd", "tmin", "landform"), + models = list(max_t1, net_t1, svm_f1), + clamp = TRUE, + pred_type = "cloglog", + thr = c("max_sens_spec", "equal_sens_spec", "max_sorensen"), + n_sim = 50, + n_cores = 5 + ) + ) + expect_length(v_ip, 13) +})