From d833038ba1e455b19e5f57be36acc8d624f5f6a9 Mon Sep 17 00:00:00 2001 From: terrytangyuan Date: Mon, 7 Sep 2015 21:48:57 -0400 Subject: [PATCH] TST: Added test for xgb.importance --- R-package/tests/testthat/test_helpers.R | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/R-package/tests/testthat/test_helpers.R b/R-package/tests/testthat/test_helpers.R index a7656f072..57f4c48fb 100644 --- a/R-package/tests/testthat/test_helpers.R +++ b/R-package/tests/testthat/test_helpers.R @@ -1,17 +1,27 @@ context('Test helper functions') require(xgboost) +require(data.table) +require(Matrix) +require(vcd) +data(Arthritis) data(agaricus.train, package='xgboost') -data(agaricus.test, package='xgboost') -train <- agaricus.train -test <- agaricus.test +df <- data.table(Arthritis, keep.rownames = F) +df[,AgeDiscret:= as.factor(round(Age/10,0))] +df[,AgeCat:= as.factor(ifelse(Age > 30, "Old", "Young"))] +df[,ID:=NULL] +sparse_matrix = sparse.model.matrix(Improved~.-1, data = df) +output_vector = df[,Y:=0][Improved == "Marked",Y:=1][,Y] +bst <- xgboost(data = sparse_matrix, label = output_vector, max.depth = 9, + eta = 1, nthread = 2, nround = 10,objective = "binary:logistic") -bst <- xgboost(data = train$data, label = train$label, max.depth = 2, - eta = 1, nthread = 2, nround = 2,objective = "binary:logistic") -test_that("dump works", { +test_that("xgb.dump works", { capture.output(print(xgb.dump(bst))) }) - +test_that("xgb.importance works", { + xgb.dump(bst, 'xgb.model.dump', with.stats = T) + importance <- xgb.importance(sparse_matrix@Dimnames[[2]], 'xgb.model.dump') +})