Nothing
library(ranger)
library(survival)
context("ranger_maxstat")
test_that("maxstat splitting works for survival", {
rf <- ranger(Surv(time, status) ~ ., veteran, splitrule = "maxstat")
expect_is(rf, "ranger")
expect_lt(rf$prediction.error, 0.4)
})
test_that("maxstat splitting works for regression", {
rf <- ranger(Sepal.Length ~ ., iris, splitrule = "maxstat")
expect_is(rf, "ranger")
expect_gt(rf$r.squared, 0.5)
})
test_that("maxstat splitting, alpha or minprop out of range throws error", {
expect_error(ranger(Surv(time, status) ~ ., veteran, splitrule = "maxstat", alpha = -1))
expect_error(ranger(Surv(time, status) ~ ., veteran, splitrule = "maxstat", alpha = 2))
expect_error(ranger(Surv(time, status) ~ ., veteran, splitrule = "maxstat", minprop = -1))
expect_error(ranger(Surv(time, status) ~ ., veteran, splitrule = "maxstat", minprop = 1))
})
test_that("maxstat splitting not working for classification", {
expect_error(ranger(Species ~ ., iris, splitrule = "maxstat"))
})
test_that("maxstat impurity importance is positive", {
rf <- ranger(Surv(time, status) ~ ., veteran, num.trees = 5,
splitrule = "maxstat", importance = "impurity")
expect_gt(mean(rf$variable.importance), 0)
rf <- ranger(Sepal.Length ~ ., iris, num.trees = 5,
splitrule = "maxstat", importance = "impurity")
expect_gt(mean(rf$variable.importance), 0)
})
test_that("maxstat corrected impurity importance is positive (on average)", {
rf <- ranger(Surv(time, status) ~ ., veteran, num.trees = 50,
splitrule = "maxstat", importance = "impurity_corrected")
expect_gt(mean(rf$variable.importance), 0)
rf <- ranger(Sepal.Length ~ ., iris, num.trees = 5,
splitrule = "maxstat", importance = "impurity_corrected")
expect_gt(mean(rf$variable.importance), 0)
})
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.