if (!testthat:::on_cran()) {
context("Testing SDTS functions")
library(tsmp)
test_that("Errors", {
# big window size
expect_error(sdts_train(mp_test_data$train$data[1:100], mp_test_data$train$label[1:110],
window_size = 5000
), "Time series is too short")
# small window size
expect_error(sdts_train(mp_test_data$train$data[1:100], mp_test_data$train$label[1:100],
window_size = 2
), "window_size")
# unknown data type
expect_error(sdts_train(table(mp_test_data$train$data[1:100]), mp_test_data$train$label[1:100],
window_size = 110
), "Unknown type")
})
w <- c(110, 220, 330)
subs <- 20000:60000
tr_data <- as.data.frame(mp_test_data$train$data[subs])
tr_label <- mp_test_data$train$label[subs]
te_data <- mp_test_data$test$data[subs]
te_label <- mp_test_data$test$label[subs]
model <- sdts_train(tr_data, tr_label, w, verbose = 0)
predict <- sdts_predict(model, te_data, round(mean(w)))
pred_score <- sdts_score(predict, te_label, 1)
test_that("SDTS Train", {
expect_equal(round(model$score, 3), 0.889)
expect_equal(round(model$score_hist, 3), c(0.667, 0.889))
expect_equal(round(sum(model$pattern[[1]] + model$pattern[[2]]) / sd(model$pattern[[1]]), 3), -8289.256)
expect_equal(round(model$thold, 3), c(9.125, 2.069))
})
test_that("SDTS Predict", {
expect_known_hash(predict, "72ddd7b33b")
})
test_that("SDTS F Score", {
expect_equal(pred_score$f_score, 0.8)
expect_equal(round(pred_score$precision, 4), 0.8)
expect_equal(pred_score$recall, 0.8)
})
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.