Nothing
context("test-kenStone")
test_that("kenStone works", {
data("NIRsoil")
X_kenStone <- kenStone(NIRsoil$spc, k = 50, metric = "mahal", pc = 3)
X_kenStone$model
expect_is(X_kenStone, "list")
sel_samples <- c(
687, 377, 410, 619, 87, 618, 611, 283, 317, 666, 789, 635,
147, 822, 285, 313, 737, 803, 819, 383, 823, 204, 591, 252,
825, 272, 402, 39, 330, 590, 286, 608, 363, 234, 701, 718,
287, 270, 571, 192, 614, 1, 386, 615, 126, 755, 734, 428,
466, 426
)
expect_true(!any(!sel_samples == X_kenStone$model))
X_kenStone_b <- kenStone(
NIRsoil$spc,
k = 50,
metric = "mahal",
pc = 3,
init = X_kenStone$model[1:10]
)
expect_true(!any(!sel_samples == X_kenStone_b$model))
})
test_that("kenStone with Mahalanobis on 1 single variable", {
data("NIRsoil")
expect_true(is.list(kenStone(NIRsoil$spc, k = 3, metric = "mahal", pc = 1)))
})
test_that("kenStone works with groups", {
data("NIRsoil")
x <- NIRsoil$spc
n_per_group <- 5
my_groups <- rep(1:floor(nrow(x) / n_per_group), each = n_per_group)
if (length(my_groups) != nrow(x)) {
my_groups <- c(rep(nrow(x), nrow(x) - length(my_groups)), my_groups)
}
X_kenStone <- kenStone(x,
k = 30,
pc = 2,
group = as.factor(my_groups)
)
expect_true(all(diff(X_kenStone$model[1:n_per_group]) == 1))
})
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.