From 615fdcfb80317ce3f26b60ba88c341bd6bd9f373 Mon Sep 17 00:00:00 2001 From: LukaszChrostowski Date: Fri, 15 Mar 2024 13:20:09 +0000 Subject: [PATCH] add flag to tinytests --- inst/tinytest/test-2-ipw-totals.R | 3511 ++++++++++++++--------------- inst/tinytest/test_methods.R | 31 +- inst/tinytest/test_nonprobsvy.R | 84 +- 3 files changed, 1814 insertions(+), 1812 deletions(-) diff --git a/inst/tinytest/test-2-ipw-totals.R b/inst/tinytest/test-2-ipw-totals.R index 721e176..6cd8df2 100644 --- a/inst/tinytest/test-2-ipw-totals.R +++ b/inst/tinytest/test-2-ipw-totals.R @@ -1,1756 +1,1755 @@ -# library(sampling) -# library(survey) -# -# -# # generation of data ---------------------------------------------------------------------- -# set.seed(2024) -# source("test-1-generate-data.R") ## path should be changed -# -# -# # check logit ----------------------------------------------------------------------------- -# ## linear case ---------------------------------------------------------------------------- -# #### correctly specified variables -------------------------------------------------------- -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# -# expect_equal(y11_corr_one$output$mean, 2.17757, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_one$output$SE, 0.1553234, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# -# -# ## for y12 -# expect_silent( -# y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_12, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# expect_equal(y12_corr_one$output$mean, 7.168049, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_one$output$SE, 1.01074, tolerance = 0.0001) ## true value for this sim -# expect_true(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# -# -# ## for y21 -# expect_silent( -# y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_21, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# -# expect_equal(y21_corr_one$output$mean, 0.6675022, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_one$output$SE, 0.05836787, tolerance = 0.0001) ## true value for this sim -# expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# -# ## for y22 -# expect_silent( -# y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_22, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# -# expect_equal(y22_corr_one$output$mean, 0.6117923, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_one$output$SE, 0.06099473, tolerance = 0.0001) ## true value for this sim -# expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# -# ##### all target variables --------------------------------------------------------------- -# -# expect_silent( -# y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# -# expect_identical(y_all_corr$output$mean, -# c(y11_corr_one$output$mean, y12_corr_one$output$mean, -# y21_corr_one$output$mean, y22_corr_one$output$mean)) -# -# expect_identical(y_all_corr$output$SE, -# c(y11_corr_one$output$SE, y12_corr_one$output$SE, -# y21_corr_one$output$SE, y22_corr_one$output$SE)) -# -# expect_identical(y_all_corr$confidence_interval, -# data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, -# y12_corr_one$confidence_interval$lower_bound, -# y21_corr_one$confidence_interval$lower_bound, -# y22_corr_one$confidence_interval$lower_bound), -# upper_bound = c(y11_corr_one$confidence_interval$upper_bound, -# y12_corr_one$confidence_interval$upper_bound, -# y21_corr_one$confidence_interval$upper_bound, -# y22_corr_one$confidence_interval$upper_bound), -# row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# -# -# -# -# #### all X variables variables ------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# -# expect_equal(y11_corr_all$output$mean, 2.005841, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_all$output$SE, 0.175094, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# -# -# ## for y12 -# expect_silent( -# y12_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_12, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# expect_equal(y12_corr_all$output$mean, 6.681308, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_all$output$SE, 0.7386469, tolerance = 0.0001) ## true value for this sim -# expect_true(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# -# -# ## for y21 -# expect_silent( -# y21_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_21, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# -# expect_equal(y21_corr_all$output$mean, 0.64798484, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_all$output$SE, 0.061434896, tolerance = 0.0001) ## true value for this sim -# expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# -# ## for y22 -# expect_silent( -# y22_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_22, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# -# expect_equal(y22_corr_all$output$mean, 0.62883878, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_all$output$SE, 0.069170412, tolerance = 0.0001) ## true value for this sim -# expect_true(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# -# ##### all target variables --------------------------------------------------------------- -# -# expect_silent( -# y_all_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# -# expect_identical(y_all_corr_all$output$mean, -# c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) -# -# expect_identical(y_all_corr_all$output$SE, -# c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) -# -# expect_identical(y_all_corr_all$confidence_interval, -# data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, -# y12_corr_all$confidence_interval$lower_bound, -# y21_corr_all$confidence_interval$lower_bound, -# y22_corr_all$confidence_interval$lower_bound), -# upper_bound = c(y11_corr_all$confidence_interval$upper_bound, -# y12_corr_all$confidence_interval$upper_bound, -# y21_corr_all$confidence_interval$upper_bound, -# y22_corr_all$confidence_interval$upper_bound), -# row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# # These tests are only supposed to be run on developer's machine and -# # package GitHub page not on CRAN (they take too long) -# -# if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { -# #### variable selection ------------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# ## y_11 -# expect_silent( -# y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_11, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "logit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y11_corr_scad$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_scad$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# expect_false(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) -# -# ## y_12 -# expect_silent( -# y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_12, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "logit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y12_corr_scad$output$mean, 6.9530644, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_scad$output$SE, 0.15341599, tolerance = 0.0001) ## true value for this sim -# expect_true(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) -# -# ## y_21 -# expect_silent( -# y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_21, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "logit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y21_corr_scad$output$mean, 0.78264707, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_scad$output$SE, 0.0090012565, tolerance = 0.0001) ## true value for this sim -# expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) -# -# ## y_22 -# expect_silent( -# y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_22, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "logit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y22_corr_scad$output$mean, 0.57680653, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_scad$output$SE, 0.011240221, tolerance = 0.0001) ## true value for this sim -# expect_false(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) -# -# -# ## lasso -# -# # expect_silent( -# # y11_corr_lasso <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "logit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "lasso")) -# # ) -# # -# # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) -# -# ## MCP -# -# # expect_silent( -# # y11_corr_mcp <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "logit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "MCP")) -# # ) -# # -# # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) -# -# ##### all target variables --------------------------------------------------------------- -# -# # expect_silent( -# # y_all_corr_all <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, + Y_12 + Y_21 + Y_22, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "logit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "SCAD", nfolds = 5), -# # verbose = T) -# # ) -# -# } -# -# -# ## non-linear case ------------------------------------------------------------------------ -# #### correctly specified variables -------------------------------------------------------- -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# -# expect_equal(y11_corr_one$output$mean, 1.9842061, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_one$output$SE, 0.1141722, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# -# -# ## for y12 -# expect_silent( -# y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_12, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# expect_equal(y12_corr_one$output$mean, 5.7852985, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_one$output$SE, 0.25978825, tolerance = 0.0001) ## true value for this sim -# expect_false(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# -# -# ## for y21 -# expect_silent( -# y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_21, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# -# expect_equal(y21_corr_one$output$mean, 0.61846098, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_one$output$SE, 0.026561368, tolerance = 0.0001) ## true value for this sim -# expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# -# ## for y22 -# expect_silent( -# y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_22, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# -# expect_equal(y22_corr_one$output$mean, 0.64512141, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_one$output$SE, 0.026011784, tolerance = 0.0001) ## true value for this sim -# expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# -# ##### all target variables --------------------------------------------------------------- -# -# expect_silent( -# y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "logit") -# ) -# -# expect_identical(y_all_corr$output$mean, -# c(y11_corr_one$output$mean, y12_corr_one$output$mean, -# y21_corr_one$output$mean, y22_corr_one$output$mean)) -# -# expect_identical(y_all_corr$output$SE, -# c(y11_corr_one$output$SE, y12_corr_one$output$SE, -# y21_corr_one$output$SE, y22_corr_one$output$SE)) -# -# expect_identical(y_all_corr$confidence_interval, -# data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, -# y12_corr_one$confidence_interval$lower_bound, -# y21_corr_one$confidence_interval$lower_bound, -# y22_corr_one$confidence_interval$lower_bound), -# upper_bound = c(y11_corr_one$confidence_interval$upper_bound, -# y12_corr_one$confidence_interval$upper_bound, -# y21_corr_one$confidence_interval$upper_bound, -# y22_corr_one$confidence_interval$upper_bound), -# row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# -# -# -# -# #### all X variables variables ------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# -# expect_equal(y11_corr_all$output$mean, 1.9820754, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_all$output$SE, 0.13574794, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# -# -# ## for y12 -# expect_silent( -# y12_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_12, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# expect_equal(y12_corr_all$output$mean, 5.6417776, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_all$output$SE, 0.27204781, tolerance = 0.0001) ## true value for this sim -# expect_false(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# -# -# ## for y21 -# expect_silent( -# y21_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_21, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# -# expect_equal(y21_corr_all$output$mean, 0.61556545, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_all$output$SE, 0.028680898, tolerance = 0.0001) ## true value for this sim -# expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# -# ## for y22 -# expect_silent( -# y22_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_22, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# -# expect_equal(y22_corr_all$output$mean, 0.57173102, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_all$output$SE, 0.024335536, tolerance = 0.0001) ## true value for this sim -# expect_false(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# -# ##### all target variables --------------------------------------------------------------- -# -# expect_silent( -# y_all_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "logit") -# ) -# -# expect_identical(y_all_corr_all$output$mean, -# c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) -# -# expect_identical(y_all_corr_all$output$SE, -# c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) -# -# expect_identical(y_all_corr_all$confidence_interval, -# data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, -# y12_corr_all$confidence_interval$lower_bound, -# y21_corr_all$confidence_interval$lower_bound, -# y22_corr_all$confidence_interval$lower_bound), -# upper_bound = c(y11_corr_all$confidence_interval$upper_bound, -# y12_corr_all$confidence_interval$upper_bound, -# y21_corr_all$confidence_interval$upper_bound, -# y22_corr_all$confidence_interval$upper_bound), -# row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# -# -# #### variable selection ------------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { -# -# ## y_11 -# expect_silent( -# y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_11, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "logit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y11_corr_scad$output$mean, 1.8810431, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_scad$output$SE, 0.059381217, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) -# -# ## y_12 -# expect_silent( -# y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_12, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "logit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y12_corr_scad$output$mean, 5.796713, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_scad$output$SE, 0.14583111, tolerance = 0.0001) ## true value for this sim -# expect_false(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) -# -# # y_21 -# expect_silent( -# y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_21, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "logit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y21_corr_scad$output$mean, 0.6060074, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_scad$output$SE, 0.010194911, tolerance = 0.0001) ## true value for this sim -# expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) -# -# # # y_22 -# expect_silent( -# y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_22, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "logit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y22_corr_scad$output$mean, 0.64707641, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_scad$output$SE, 0.0099648982, tolerance = 0.0001) ## true value for this sim -# expect_true(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) -# -# -# ## lasso -# -# # expect_silent( -# # y11_corr_lasso <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "logit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "lasso")) -# # ) -# # -# # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) -# -# ## MCP -# -# # expect_silent( -# # y11_corr_mcp <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "logit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "MCP")) -# # ) -# # -# # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) -# -# ##### all target variables --------------------------------------------------------------- -# -# # expect_silent( -# # y_all_corr_all <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, + Y_12 + Y_21 + Y_22, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "logit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "SCAD", nfolds = 5), -# # verbose = T) -# # ) -# -# } -# -# -# # check probit ---------------------------------------------------------------------------- -# ## linear case ---------------------------------------------------------------------------- -# #### correctly specified variables -------------------------------------------------------- -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# -# expect_equal(y11_corr_one$output$mean, 2.1985815, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_one$output$SE, 0.12852317, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# -# -# ## for y12 -# expect_silent( -# y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_12, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# expect_equal(y12_corr_one$output$mean, 7.1226154, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_one$output$SE, 0.83353647, tolerance = 0.0001) ## true value for this sim -# expect_true(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# -# -# ## for y21 -# expect_silent( -# y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_21, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# -# expect_equal(y21_corr_one$output$mean, 0.65778764, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_one$output$SE, 0.066138969, tolerance = 0.0001) ## true value for this sim -# expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# -# ## for y22 -# expect_silent( -# y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_22, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# -# expect_equal(y22_corr_one$output$mean, 0.58148029, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_one$output$SE, 0.068800601, tolerance = 0.0001) ## true value for this sim -# expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# -# ##### all target variables --------------------------------------------------------------- -# -# expect_silent( -# y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# -# expect_identical(y_all_corr$output$mean, -# c(y11_corr_one$output$mean, y12_corr_one$output$mean, -# y21_corr_one$output$mean, y22_corr_one$output$mean)) -# -# expect_identical(y_all_corr$output$SE, -# c(y11_corr_one$output$SE, y12_corr_one$output$SE, -# y21_corr_one$output$SE, y22_corr_one$output$SE)) -# -# expect_identical(y_all_corr$confidence_interval, -# data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, -# y12_corr_one$confidence_interval$lower_bound, -# y21_corr_one$confidence_interval$lower_bound, -# y22_corr_one$confidence_interval$lower_bound), -# upper_bound = c(y11_corr_one$confidence_interval$upper_bound, -# y12_corr_one$confidence_interval$upper_bound, -# y21_corr_one$confidence_interval$upper_bound, -# y22_corr_one$confidence_interval$upper_bound), -# row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# -# -# -# -# #### all X variables variables ------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# -# expect_equal(y11_corr_all$output$mean, 2.0102108, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_all$output$SE, 0.16422236, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# -# -# ## for y12 -# expect_silent( -# y12_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_12, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# expect_equal(y12_corr_all$output$mean, 6.6878138, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_all$output$SE, 0.60740161, tolerance = 0.0001) ## true value for this sim -# expect_true(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# -# -# ## for y21 -# expect_silent( -# y21_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_21, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# -# expect_equal(y21_corr_all$output$mean, 0.64617883, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_all$output$SE, 0.074037561, tolerance = 0.0001) ## true value for this sim -# expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# -# ## for y22 -# expect_silent( -# y22_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_22, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# -# expect_equal(y22_corr_all$output$mean, 0.62456575, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_all$output$SE, 0.083014906, tolerance = 0.0001) ## true value for this sim -# expect_true(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# -# ##### all target variables --------------------------------------------------------------- -# -# expect_silent( -# y_all_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# -# expect_identical(y_all_corr_all$output$mean, -# c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) -# -# expect_identical(y_all_corr_all$output$SE, -# c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) -# -# expect_identical(y_all_corr_all$confidence_interval, -# data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, -# y12_corr_all$confidence_interval$lower_bound, -# y21_corr_all$confidence_interval$lower_bound, -# y22_corr_all$confidence_interval$lower_bound), -# upper_bound = c(y11_corr_all$confidence_interval$upper_bound, -# y12_corr_all$confidence_interval$upper_bound, -# y21_corr_all$confidence_interval$upper_bound, -# y22_corr_all$confidence_interval$upper_bound), -# row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# -# if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { -# #### variable selection ------------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# ## y_11 -# expect_silent( -# y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_11, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "probit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y11_corr_scad$output$mean, 3.0633399, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_scad$output$SE, 0.049384577, tolerance = 0.0001) ## true value for this sim -# expect_false(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) -# -# ## y_12 -# expect_silent( -# y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_12, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "probit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y12_corr_scad$output$mean, 6.9420676, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_scad$output$SE, 0.15578019, tolerance = 0.0001) ## true value for this sim -# expect_true(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) -# -# ## y_21 -# expect_silent( -# y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_21, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "probit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y21_corr_scad$output$mean, 0.78324543, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_scad$output$SE, 0.0090654702, tolerance = 0.0001) ## true value for this sim -# expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) -# -# ## y_22 -# expect_silent( -# y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_22, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "probit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y22_corr_scad$output$mean, 0.57672297, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_scad$output$SE, 0.011433876, tolerance = 0.0001) ## true value for this sim -# expect_false(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) -# -# -# ## lasso -# -# # expect_silent( -# # y11_corr_lasso <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "probit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "lasso")) -# # ) -# # -# # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) -# -# ## MCP -# -# # expect_silent( -# # y11_corr_mcp <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "probit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "MCP")) -# # ) -# # -# # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) -# -# ##### all target variables --------------------------------------------------------------- -# -# # expect_silent( -# # y_all_corr_all <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, + Y_12 + Y_21 + Y_22, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "probit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "SCAD", nfolds = 5), -# # verbose = T) -# # ) -# -# } -# -# ## non-linear case ------------------------------------------------------------------------ -# #### correctly specified variables -------------------------------------------------------- -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# -# expect_equal(y11_corr_one$output$mean, 1.984232, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_one$output$SE, 0.10478658, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# -# -# ## for y12 -# expect_silent( -# y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_12, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# expect_equal(y12_corr_one$output$mean, 5.7851563, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_one$output$SE, 0.20174126, tolerance = 0.0001) ## true value for this sim -# expect_false(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# -# -# ## for y21 -# expect_silent( -# y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_21, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# -# expect_equal(y21_corr_one$output$mean, 0.61846032, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_one$output$SE, 0.031103296, tolerance = 0.0001) ## true value for this sim -# expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# -# ## for y22 -# expect_silent( -# y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_22, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# -# expect_equal(y22_corr_one$output$mean, 0.64509743, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_one$output$SE, 0.030385359, tolerance = 0.0001) ## true value for this sim -# expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# -# ##### all target variables --------------------------------------------------------------- -# -# expect_silent( -# y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "probit") -# ) -# -# expect_identical(y_all_corr$output$mean, -# c(y11_corr_one$output$mean, y12_corr_one$output$mean, -# y21_corr_one$output$mean, y22_corr_one$output$mean)) -# -# expect_identical(y_all_corr$output$SE, -# c(y11_corr_one$output$SE, y12_corr_one$output$SE, -# y21_corr_one$output$SE, y22_corr_one$output$SE)) -# -# expect_identical(y_all_corr$confidence_interval, -# data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, -# y12_corr_one$confidence_interval$lower_bound, -# y21_corr_one$confidence_interval$lower_bound, -# y22_corr_one$confidence_interval$lower_bound), -# upper_bound = c(y11_corr_one$confidence_interval$upper_bound, -# y12_corr_one$confidence_interval$upper_bound, -# y21_corr_one$confidence_interval$upper_bound, -# y22_corr_one$confidence_interval$upper_bound), -# row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# -# -# -# -# #### all X variables variables ------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# -# expect_equal(y11_corr_all$output$mean, 1.981833, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_all$output$SE, 0.12730647, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# -# -# ## for y12 -# expect_silent( -# y12_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_12, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# expect_equal(y12_corr_all$output$mean, 5.6436133, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_all$output$SE, 0.21772187, tolerance = 0.0001) ## true value for this sim -# expect_false(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# -# -# ## for y21 -# expect_silent( -# y21_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_21, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# -# expect_equal(y21_corr_all$output$mean, 0.61562293, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_all$output$SE, 0.033259168, tolerance = 0.0001) ## true value for this sim -# expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# -# ## for y22 -# expect_silent( -# y22_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_22, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# -# expect_equal(y22_corr_all$output$mean, 0.57173464, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_all$output$SE, 0.028962455, tolerance = 0.0001) ## true value for this sim -# expect_false(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# -# ##### all target variables --------------------------------------------------------------- -# -# expect_silent( -# y_all_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "probit") -# ) -# -# expect_identical(y_all_corr_all$output$mean, -# c(y11_corr_all$output$mean, y12_corr_all$output$mean, -# y21_corr_all$output$mean, y22_corr_all$output$mean)) -# -# expect_identical(y_all_corr_all$output$SE, -# c(y11_corr_all$output$SE, y12_corr_all$output$SE, -# y21_corr_all$output$SE, y22_corr_all$output$SE)) -# -# expect_identical(y_all_corr_all$confidence_interval, -# data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, -# y12_corr_all$confidence_interval$lower_bound, -# y21_corr_all$confidence_interval$lower_bound, -# y22_corr_all$confidence_interval$lower_bound), -# upper_bound = c(y11_corr_all$confidence_interval$upper_bound, -# y12_corr_all$confidence_interval$upper_bound, -# y21_corr_all$confidence_interval$upper_bound, -# y22_corr_all$confidence_interval$upper_bound), -# row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# -# if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { -# #### variable selection ------------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# # # y_11 -# expect_silent( -# y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_11, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "probit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y11_corr_scad$output$mean, 1.8810431, tolerance = 0.0001) ## true value for this sim -# expect_equal(y11_corr_scad$output$SE, 0.059381198, tolerance = 0.0001) ## true value for this sim -# expect_true(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & -# y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) -# -# ## y_12 -# expect_silent( -# y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_12, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "probit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y12_corr_scad$output$mean, 5.7967136, tolerance = 0.0001) ## true value for this sim -# expect_equal(y12_corr_scad$output$SE, 0.14583128, tolerance = 0.0001) ## true value for this sim -# expect_false(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & -# y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) -# -# # # y_21 -# expect_silent( -# y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_21, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "probit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y21_corr_scad$output$mean, 0.60600756, tolerance = 0.0001) ## true value for this sim -# expect_equal(y21_corr_scad$output$SE, 0.010194928, tolerance = 0.0001) ## true value for this sim -# expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & -# y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) -# -# # # y_22 -# expect_silent( -# y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_22, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "probit", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# expect_equal(y22_corr_scad$output$mean, 0.64707626, tolerance = 0.0001) ## true value for this sim -# expect_equal(y22_corr_scad$output$SE, 0.0099648984, tolerance = 0.0001) ## true value for this sim -# expect_true(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & -# y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) -# -# -# ## lasso -# -# # expect_silent( -# # y11_corr_lasso <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "probit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "lasso")) -# # ) -# # -# # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) -# -# ## MCP -# -# # expect_silent( -# # y11_corr_mcp <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "probit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "MCP")) -# # ) -# # -# # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) -# -# ##### all target variables --------------------------------------------------------------- -# -# # expect_silent( -# # y_all_corr_all <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# # target = ~ Y_11, + Y_12 + Y_21 + Y_22, -# # data = sample_B1, -# # pop_totals = X_totals[1:11], -# # method_selection = "probit", -# # control_inference = controlInf(vars_selection = TRUE), -# # control_selection = controlSel(penalty = "SCAD", nfolds = 5), -# # verbose = T) -# # ) -# -# } -# -# # check cloglog ----------------------------------------------------- -# ## linear case ---------------------------------------------------------------------------- -# #### correctly specified variables -------------------------------------------------------- -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y11_corr_one$output$mean, 2.015028, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_one$output$SE, 0.1713938, tolerance = 0.0001) ## true value for this sim -# # expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# -# -# # ## for y12 -# expect_silent( -# y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_12, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "cloglog") -# ) -# # expect_equal(y12_corr_one$output$mean, 6.617158, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y12_corr_one$output$SE, 0.6183295, tolerance = 0.0001) ## true value for this sim -# # expect_true(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & -# # y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# # -# # -# # ## for y21 -# # expect_silent( -# # y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# # target = ~ Y_21, -# # data = sample_B1, -# # pop_totals = X_totals[1:5], -# # method_selection = "cloglog") -# # ) -# # -# # expect_equal(y21_corr_one$output$mean, 0.6589795, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y21_corr_one$output$SE, 0.05471915, tolerance = 0.0001) ## true value for this sim -# # expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & -# # y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# # -# # ## for y22 -# expect_silent( -# y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_22, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y22_corr_one$output$mean, 0.6872036, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y22_corr_one$output$SE, 0.06540456, tolerance = 0.0001) ## true value for this sim -# # expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & -# # y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# # -# # ##### all target variables --------------------------------------------------------------- -# # -# expect_silent( -# y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B1, -# pop_totals = X_totals[1:5], -# method_selection = "cloglog") -# ) -# # -# # expect_identical(y_all_corr$output$mean, -# # c(y11_corr_one$output$mean, y12_corr_one$output$mean, -# # y21_corr_one$output$mean, y22_corr_one$output$mean)) -# # -# # expect_identical(y_all_corr$output$SE, -# # c(y11_corr_one$output$SE, y12_corr_one$output$SE, -# # y21_corr_one$output$SE, y22_corr_one$output$SE)) -# # # -# # expect_identical(y_all_corr$confidence_interval, -# # data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, -# # y12_corr_one$confidence_interval$lower_bound, -# # y21_corr_one$confidence_interval$lower_bound, -# # y22_corr_one$confidence_interval$lower_bound), -# # upper_bound = c(y11_corr_one$confidence_interval$upper_bound, -# # y12_corr_one$confidence_interval$upper_bound, -# # y21_corr_one$confidence_interval$upper_bound, -# # y22_corr_one$confidence_interval$upper_bound), -# # row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# # -# # -# # -# # #### all X variables variables TOFIX ------------------------------------------------------------ -# # ##### one target variable ---------------------------------------------------------------- -# # -# # ## for y11 -# expect_silent( -# y11_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y11_corr_all$output$mean, 1.956418, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_all$output$SE, 0.2019104, tolerance = 0.0001) ## true value for this sim -# # expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # -# # -# # ## for y12 -# expect_silent( -# y12_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_12, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # expect_equal(y12_corr_all$output$mean, 6.571494, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y12_corr_all$output$SE, 0.7128783, tolerance = 0.0001) ## true value for this sim -# # expect_true(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & -# # y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# # -# # -# # ## for y21 -# expect_silent( -# y21_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_21, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y21_corr_all$output$mean, 0.6496145, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y21_corr_all$output$SE, 0.0575112, tolerance = 0.0001) ## true value for this sim -# # expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & -# # y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# # -# # ## for y22 -# expect_silent( -# y22_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_22, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y22_corr_all$output$mean, 0.6763156, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y22_corr_all$output$SE, 0.06510848, tolerance = 0.0001) ## true value for this sim -# # expect_true(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & -# # y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# # -# # ##### all target variables --------------------------------------------------------------- -# # -# expect_silent( -# y_all_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B1, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # -# # expect_identical(y_all_corr_all$output$mean, -# # c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) -# # -# # expect_identical(y_all_corr_all$output$SE, -# # c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) -# # -# # expect_identical(y_all_corr_all$confidence_interval, -# # data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, -# # y12_corr_all$confidence_interval$lower_bound, -# # y21_corr_all$confidence_interval$lower_bound, -# # y22_corr_all$confidence_interval$lower_bound), -# # upper_bound = c(y11_corr_all$confidence_interval$upper_bound, -# # y12_corr_all$confidence_interval$upper_bound, -# # y21_corr_all$confidence_interval$upper_bound, -# # y22_corr_all$confidence_interval$upper_bound), -# # row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# # -# -# if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { -# -# #### variable selection ------------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# ## y_11 to fix -# expect_silent( -# y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_11, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "cloglog", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# # expect_equal(y11_corr_scad$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_scad$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim -# # expect_false(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) -# -# ## y_12 to fix -# expect_silent( -# y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_12, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "cloglog", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# # expect_equal(y12_corr_scad$output$mean, 6.9530644, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y12_corr_scad$output$SE, 0.15341599, tolerance = 0.0001) ## true value for this sim -# # expect_true(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & -# # y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# # expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) -# -# ## y_21 to fix -# expect_silent( -# y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_21, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "cloglog", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# # expect_equal(y21_corr_scad$output$mean, 0.78264707, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y21_corr_scad$output$SE, 0.0090012565, tolerance = 0.0001) ## true value for this sim -# # expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & -# # y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# # expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) -# -# ## y_22 to fix -# expect_silent( -# y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_22, -# data = sample_B1, -# pop_totals = X_totals[1:11], -# method_selection = "cloglog", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# -# # expect_equal(y22_corr_scad$output$mean, 0.57680653, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y22_corr_scad$output$SE, 0.011240221, tolerance = 0.0001) ## true value for this sim -# # expect_false(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & -# # y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# # expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) -# -# -# ## non-linear case ------------------------------------------------------------------------ -# #### correctly specified variables -------------------------------------------------------- -# ##### one target variable ---------------------------------------------------------------- -# -# ## for y11 -# expect_silent( -# y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y11_corr_one$output$mean, 2.10861, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_one$output$SE, 0.1243684, tolerance = 0.0001) ## true value for this sim -# # expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # -# # -# # ## for y12 -# expect_silent( -# y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_12, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "cloglog") -# ) -# # expect_equal(y12_corr_one$output$mean, 5.708058, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y12_corr_one$output$SE, 0.2604017, tolerance = 0.0001) ## true value for this sim -# # expect_false(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & -# # y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# # -# # -# # ## for y21 -# expect_silent( -# y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_21, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y21_corr_one$output$mean, 0.6096105, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y21_corr_one$output$SE, 0.02698877, tolerance = 0.0001) ## true value for this sim -# # expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & -# # y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# # -# # ## for y22 -# expect_silent( -# y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_22, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y22_corr_one$output$mean, 0.6210885, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y22_corr_one$output$SE, 0.02561999, tolerance = 0.0001) ## true value for this sim -# # expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & -# # y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# # -# -# } -# # ##### all target variables --------------------------------------------------------------- -# # -# expect_silent( -# y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B2, -# pop_totals = X_totals[1:5], -# method_selection = "cloglog") -# ) -# # -# # expect_identical(y_all_corr$output$mean, -# # c(y11_corr_one$output$mean, y12_corr_one$output$mean, -# # y21_corr_one$output$mean, y22_corr_one$output$mean)) -# # -# # expect_identical(y_all_corr$output$SE, -# # c(y11_corr_one$output$SE, y12_corr_one$output$SE, -# # y21_corr_one$output$SE, y22_corr_one$output$SE)) -# # -# # expect_identical(y_all_corr$confidence_interval, -# # data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, -# # y12_corr_one$confidence_interval$lower_bound, -# # y21_corr_one$confidence_interval$lower_bound, -# # y22_corr_one$confidence_interval$lower_bound), -# # upper_bound = c(y11_corr_one$confidence_interval$upper_bound, -# # y12_corr_one$confidence_interval$upper_bound, -# # y21_corr_one$confidence_interval$upper_bound, -# # y22_corr_one$confidence_interval$upper_bound), -# # row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# -# -# -# -# #### all X variables variables ------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# # ## for y11 -# expect_silent( -# y11_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y11_corr_all$output$mean, 2.045187, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_all$output$SE, 0.1403925, tolerance = 0.0001) ## true value for this sim -# # expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # -# # -# # ## for y12 -# expect_silent( -# y12_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_12, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # expect_equal(y12_corr_all$output$mean, 5.570961, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y12_corr_all$output$SE, 0.267995, tolerance = 0.0001) ## true value for this sim -# # expect_false(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & -# # y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# # -# # -# # ## for y21 -# expect_silent( -# y21_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_21, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y21_corr_all$output$mean, 0.5999782, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y21_corr_all$output$SE, 0.02837228, tolerance = 0.0001) ## true value for this sim -# # expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & -# # y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# # -# # ## for y22 -# expect_silent( -# y22_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_22, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # -# # expect_equal(y22_corr_all$output$mean, 0.558637, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y22_corr_all$output$SE, 0.02463264, tolerance = 0.0001) ## true value for this sim -# # expect_false(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & -# # y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# # -# # ##### all target variables --------------------------------------------------------------- -# # -# expect_silent( -# y_all_corr_all <- nonprob(selection = X_formula, -# target = ~ Y_11 + Y_12 + Y_21 + Y_22, -# data = sample_B2, -# pop_totals = X_totals, -# method_selection = "cloglog") -# ) -# # -# # expect_identical(y_all_corr_all$output$mean, -# # c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) -# # # -# # expect_identical(y_all_corr_all$output$SE, -# # c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) -# # # -# # expect_identical(y_all_corr_all$confidence_interval, -# # data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, -# # y12_corr_all$confidence_interval$lower_bound, -# # y21_corr_all$confidence_interval$lower_bound, -# # y22_corr_all$confidence_interval$lower_bound), -# # upper_bound = c(y11_corr_all$confidence_interval$upper_bound, -# # y12_corr_all$confidence_interval$upper_bound, -# # y21_corr_all$confidence_interval$upper_bound, -# # y22_corr_all$confidence_interval$upper_bound), -# # row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) -# -# if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { -# -# #### variable selection ------------------------------------------------------------------ -# ##### one target variable ---------------------------------------------------------------- -# -# ## y_11 -# expect_silent( -# y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_11, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "cloglog", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# # -# # expect_equal(y11_corr_scad$output$mean, 1.992688, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y11_corr_scad$output$SE, 0.06352848, tolerance = 0.0001) ## true value for this sim -# # expect_true(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & -# # y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int -# # expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) -# # -# # ## y_12 -# expect_silent( -# y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_12, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "cloglog", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# # -# # expect_equal(y12_corr_scad$output$mean, 5.712705, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y12_corr_scad$output$SE, 0.1460298, tolerance = 0.0001) ## true value for this sim -# # expect_false(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & -# # y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int -# # expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) -# # -# # ## y_21 -# expect_silent( -# y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_21, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "cloglog", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# # -# # expect_equal(y21_corr_scad$output$mean, 0.5955036, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y21_corr_scad$output$SE, 0.01039547, tolerance = 0.0001) ## true value for this sim -# # expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & -# # y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int -# # expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) -# # -# # ## y_22 -# expect_silent( -# y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, -# target = ~ Y_22, -# data = sample_B2, -# pop_totals = X_totals[1:11], -# method_selection = "cloglog", -# control_inference = controlInf(vars_selection = TRUE), -# control_selection = controlSel(penalty = "SCAD", nfolds = 5)) -# ) -# # -# # expect_equal(y22_corr_scad$output$mean, 0.621987, tolerance = 0.0001) ## true value for this sim -# # expect_equal(y22_corr_scad$output$SE, 0.01026539, tolerance = 0.0001) ## true value for this sim -# # # to fix -# # # expect_true(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & -# # # y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int -# # expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) -# -# } +if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { + + library(sampling) + library(survey) + + + # generation of data ---------------------------------------------------------------------- + set.seed(2024) + source("test-1-generate-data.R") ## path should be changed + + + # check logit ----------------------------------------------------------------------------- + ## linear case ---------------------------------------------------------------------------- + #### correctly specified variables -------------------------------------------------------- + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + + expect_equal(y11_corr_one$output$mean, 2.17757, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_one$output$SE, 0.1553234, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int + + + ## for y12 + expect_silent( + y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_12, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + expect_equal(y12_corr_one$output$mean, 7.168049, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_one$output$SE, 1.01074, tolerance = 0.0001) ## true value for this sim + expect_true(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int + + + ## for y21 + expect_silent( + y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_21, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + + expect_equal(y21_corr_one$output$mean, 0.6675022, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_one$output$SE, 0.05836787, tolerance = 0.0001) ## true value for this sim + expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int + + ## for y22 + expect_silent( + y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_22, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + + expect_equal(y22_corr_one$output$mean, 0.6117923, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_one$output$SE, 0.06099473, tolerance = 0.0001) ## true value for this sim + expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int + + ##### all target variables --------------------------------------------------------------- + + expect_silent( + y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + + expect_identical(y_all_corr$output$mean, + c(y11_corr_one$output$mean, y12_corr_one$output$mean, + y21_corr_one$output$mean, y22_corr_one$output$mean)) + + expect_identical(y_all_corr$output$SE, + c(y11_corr_one$output$SE, y12_corr_one$output$SE, + y21_corr_one$output$SE, y22_corr_one$output$SE)) + + expect_identical(y_all_corr$confidence_interval, + data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, + y12_corr_one$confidence_interval$lower_bound, + y21_corr_one$confidence_interval$lower_bound, + y22_corr_one$confidence_interval$lower_bound), + upper_bound = c(y11_corr_one$confidence_interval$upper_bound, + y12_corr_one$confidence_interval$upper_bound, + y21_corr_one$confidence_interval$upper_bound, + y22_corr_one$confidence_interval$upper_bound), + row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + + + + + #### all X variables variables ------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11, + data = sample_B1, + pop_totals = X_totals, + method_selection = "logit") + ) + + expect_equal(y11_corr_all$output$mean, 2.005841, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_all$output$SE, 0.175094, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int + + + ## for y12 + expect_silent( + y12_corr_all <- nonprob(selection = X_formula, + target = ~ Y_12, + data = sample_B1, + pop_totals = X_totals, + method_selection = "logit") + ) + expect_equal(y12_corr_all$output$mean, 6.681308, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_all$output$SE, 0.7386469, tolerance = 0.0001) ## true value for this sim + expect_true(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int + + + ## for y21 + expect_silent( + y21_corr_all <- nonprob(selection = X_formula, + target = ~ Y_21, + data = sample_B1, + pop_totals = X_totals, + method_selection = "logit") + ) + + expect_equal(y21_corr_all$output$mean, 0.64798484, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_all$output$SE, 0.061434896, tolerance = 0.0001) ## true value for this sim + expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int + + ## for y22 + expect_silent( + y22_corr_all <- nonprob(selection = X_formula, + target = ~ Y_22, + data = sample_B1, + pop_totals = X_totals, + method_selection = "logit") + ) + + expect_equal(y22_corr_all$output$mean, 0.62883878, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_all$output$SE, 0.069170412, tolerance = 0.0001) ## true value for this sim + expect_true(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int + + ##### all target variables --------------------------------------------------------------- + + expect_silent( + y_all_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B1, + pop_totals = X_totals, + method_selection = "logit") + ) + + expect_identical(y_all_corr_all$output$mean, + c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) + + expect_identical(y_all_corr_all$output$SE, + c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) + + expect_identical(y_all_corr_all$confidence_interval, + data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, + y12_corr_all$confidence_interval$lower_bound, + y21_corr_all$confidence_interval$lower_bound, + y22_corr_all$confidence_interval$lower_bound), + upper_bound = c(y11_corr_all$confidence_interval$upper_bound, + y12_corr_all$confidence_interval$upper_bound, + y21_corr_all$confidence_interval$upper_bound, + y22_corr_all$confidence_interval$upper_bound), + row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + # These tests are only supposed to be run on developer's machine and + # package GitHub page not on CRAN (they take too long) + + if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { + #### variable selection ------------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + ## y_11 + expect_silent( + y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_11, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "logit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y11_corr_scad$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_scad$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + expect_false(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int + expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) + + ## y_12 + expect_silent( + y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_12, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "logit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y12_corr_scad$output$mean, 6.9530644, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_scad$output$SE, 0.15341599, tolerance = 0.0001) ## true value for this sim + expect_true(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int + expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) + + ## y_21 + expect_silent( + y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_21, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "logit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y21_corr_scad$output$mean, 0.78264707, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_scad$output$SE, 0.0090012565, tolerance = 0.0001) ## true value for this sim + expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int + expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) + + ## y_22 + expect_silent( + y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_22, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "logit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y22_corr_scad$output$mean, 0.57680653, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_scad$output$SE, 0.011240221, tolerance = 0.0001) ## true value for this sim + expect_false(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int + expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) + + + ## lasso + + # expect_silent( + # y11_corr_lasso <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "logit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "lasso")) + # ) + # + # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) + + ## MCP + + # expect_silent( + # y11_corr_mcp <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "logit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "MCP")) + # ) + # + # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) + + ##### all target variables --------------------------------------------------------------- + + # expect_silent( + # y_all_corr_all <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + Y_12 + Y_21 + Y_22, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "logit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "SCAD", nfolds = 5), + # verbose = T) + # ) + + } + + + ## non-linear case ------------------------------------------------------------------------ + #### correctly specified variables -------------------------------------------------------- + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + + expect_equal(y11_corr_one$output$mean, 1.9842061, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_one$output$SE, 0.1141722, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int + + + ## for y12 + expect_silent( + y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_12, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + expect_equal(y12_corr_one$output$mean, 5.7852985, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_one$output$SE, 0.25978825, tolerance = 0.0001) ## true value for this sim + expect_false(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int + + + ## for y21 + expect_silent( + y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_21, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + + expect_equal(y21_corr_one$output$mean, 0.61846098, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_one$output$SE, 0.026561368, tolerance = 0.0001) ## true value for this sim + expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int + + ## for y22 + expect_silent( + y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_22, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + + expect_equal(y22_corr_one$output$mean, 0.64512141, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_one$output$SE, 0.026011784, tolerance = 0.0001) ## true value for this sim + expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int + + ##### all target variables --------------------------------------------------------------- + + expect_silent( + y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "logit") + ) + + expect_identical(y_all_corr$output$mean, + c(y11_corr_one$output$mean, y12_corr_one$output$mean, + y21_corr_one$output$mean, y22_corr_one$output$mean)) + + expect_identical(y_all_corr$output$SE, + c(y11_corr_one$output$SE, y12_corr_one$output$SE, + y21_corr_one$output$SE, y22_corr_one$output$SE)) + + expect_identical(y_all_corr$confidence_interval, + data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, + y12_corr_one$confidence_interval$lower_bound, + y21_corr_one$confidence_interval$lower_bound, + y22_corr_one$confidence_interval$lower_bound), + upper_bound = c(y11_corr_one$confidence_interval$upper_bound, + y12_corr_one$confidence_interval$upper_bound, + y21_corr_one$confidence_interval$upper_bound, + y22_corr_one$confidence_interval$upper_bound), + row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + + + + + #### all X variables variables ------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11, + data = sample_B2, + pop_totals = X_totals, + method_selection = "logit") + ) + + expect_equal(y11_corr_all$output$mean, 1.9820754, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_all$output$SE, 0.13574794, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int + + + ## for y12 + expect_silent( + y12_corr_all <- nonprob(selection = X_formula, + target = ~ Y_12, + data = sample_B2, + pop_totals = X_totals, + method_selection = "logit") + ) + expect_equal(y12_corr_all$output$mean, 5.6417776, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_all$output$SE, 0.27204781, tolerance = 0.0001) ## true value for this sim + expect_false(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int + + + ## for y21 + expect_silent( + y21_corr_all <- nonprob(selection = X_formula, + target = ~ Y_21, + data = sample_B2, + pop_totals = X_totals, + method_selection = "logit") + ) + + expect_equal(y21_corr_all$output$mean, 0.61556545, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_all$output$SE, 0.028680898, tolerance = 0.0001) ## true value for this sim + expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int + + ## for y22 + expect_silent( + y22_corr_all <- nonprob(selection = X_formula, + target = ~ Y_22, + data = sample_B2, + pop_totals = X_totals, + method_selection = "logit") + ) + + expect_equal(y22_corr_all$output$mean, 0.57173102, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_all$output$SE, 0.024335536, tolerance = 0.0001) ## true value for this sim + expect_false(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int + + ##### all target variables --------------------------------------------------------------- + + expect_silent( + y_all_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B2, + pop_totals = X_totals, + method_selection = "logit") + ) + + expect_identical(y_all_corr_all$output$mean, + c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) + + expect_identical(y_all_corr_all$output$SE, + c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) + + expect_identical(y_all_corr_all$confidence_interval, + data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, + y12_corr_all$confidence_interval$lower_bound, + y21_corr_all$confidence_interval$lower_bound, + y22_corr_all$confidence_interval$lower_bound), + upper_bound = c(y11_corr_all$confidence_interval$upper_bound, + y12_corr_all$confidence_interval$upper_bound, + y21_corr_all$confidence_interval$upper_bound, + y22_corr_all$confidence_interval$upper_bound), + row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + + + #### variable selection ------------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { + + ## y_11 + expect_silent( + y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_11, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "logit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y11_corr_scad$output$mean, 1.8810431, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_scad$output$SE, 0.059381217, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int + expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) + + ## y_12 + expect_silent( + y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_12, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "logit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y12_corr_scad$output$mean, 5.796713, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_scad$output$SE, 0.14583111, tolerance = 0.0001) ## true value for this sim + expect_false(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int + expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) + + # y_21 + expect_silent( + y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_21, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "logit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y21_corr_scad$output$mean, 0.6060074, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_scad$output$SE, 0.010194911, tolerance = 0.0001) ## true value for this sim + expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int + expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) + + # # y_22 + expect_silent( + y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_22, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "logit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y22_corr_scad$output$mean, 0.64707641, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_scad$output$SE, 0.0099648982, tolerance = 0.0001) ## true value for this sim + expect_true(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int + expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) + + + ## lasso + + # expect_silent( + # y11_corr_lasso <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "logit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "lasso")) + # ) + # + # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) + + ## MCP + + # expect_silent( + # y11_corr_mcp <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "logit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "MCP")) + # ) + # + # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) + + ##### all target variables --------------------------------------------------------------- + + # expect_silent( + # y_all_corr_all <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + Y_12 + Y_21 + Y_22, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "logit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "SCAD", nfolds = 5), + # verbose = T) + # ) + + } + + + # check probit ---------------------------------------------------------------------------- + ## linear case ---------------------------------------------------------------------------- + #### correctly specified variables -------------------------------------------------------- + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + + expect_equal(y11_corr_one$output$mean, 2.1985815, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_one$output$SE, 0.12852317, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int + + + ## for y12 + expect_silent( + y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_12, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + expect_equal(y12_corr_one$output$mean, 7.1226154, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_one$output$SE, 0.83353647, tolerance = 0.0001) ## true value for this sim + expect_true(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int + + + ## for y21 + expect_silent( + y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_21, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + + expect_equal(y21_corr_one$output$mean, 0.65778764, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_one$output$SE, 0.066138969, tolerance = 0.0001) ## true value for this sim + expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int + + ## for y22 + expect_silent( + y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_22, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + + expect_equal(y22_corr_one$output$mean, 0.58148029, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_one$output$SE, 0.068800601, tolerance = 0.0001) ## true value for this sim + expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int + + ##### all target variables --------------------------------------------------------------- + + expect_silent( + y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + + expect_identical(y_all_corr$output$mean, + c(y11_corr_one$output$mean, y12_corr_one$output$mean, + y21_corr_one$output$mean, y22_corr_one$output$mean)) + + expect_identical(y_all_corr$output$SE, + c(y11_corr_one$output$SE, y12_corr_one$output$SE, + y21_corr_one$output$SE, y22_corr_one$output$SE)) + + expect_identical(y_all_corr$confidence_interval, + data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, + y12_corr_one$confidence_interval$lower_bound, + y21_corr_one$confidence_interval$lower_bound, + y22_corr_one$confidence_interval$lower_bound), + upper_bound = c(y11_corr_one$confidence_interval$upper_bound, + y12_corr_one$confidence_interval$upper_bound, + y21_corr_one$confidence_interval$upper_bound, + y22_corr_one$confidence_interval$upper_bound), + row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + + + + + #### all X variables variables ------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11, + data = sample_B1, + pop_totals = X_totals, + method_selection = "probit") + ) + + expect_equal(y11_corr_all$output$mean, 2.0102108, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_all$output$SE, 0.16422236, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int + + + ## for y12 + expect_silent( + y12_corr_all <- nonprob(selection = X_formula, + target = ~ Y_12, + data = sample_B1, + pop_totals = X_totals, + method_selection = "probit") + ) + expect_equal(y12_corr_all$output$mean, 6.6878138, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_all$output$SE, 0.60740161, tolerance = 0.0001) ## true value for this sim + expect_true(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int + + + ## for y21 + expect_silent( + y21_corr_all <- nonprob(selection = X_formula, + target = ~ Y_21, + data = sample_B1, + pop_totals = X_totals, + method_selection = "probit") + ) + + expect_equal(y21_corr_all$output$mean, 0.64617883, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_all$output$SE, 0.074037561, tolerance = 0.0001) ## true value for this sim + expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int + + ## for y22 + expect_silent( + y22_corr_all <- nonprob(selection = X_formula, + target = ~ Y_22, + data = sample_B1, + pop_totals = X_totals, + method_selection = "probit") + ) + + expect_equal(y22_corr_all$output$mean, 0.62456575, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_all$output$SE, 0.083014906, tolerance = 0.0001) ## true value for this sim + expect_true(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int + + ##### all target variables --------------------------------------------------------------- + + expect_silent( + y_all_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B1, + pop_totals = X_totals, + method_selection = "probit") + ) + + expect_identical(y_all_corr_all$output$mean, + c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) + + expect_identical(y_all_corr_all$output$SE, + c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) + + expect_identical(y_all_corr_all$confidence_interval, + data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, + y12_corr_all$confidence_interval$lower_bound, + y21_corr_all$confidence_interval$lower_bound, + y22_corr_all$confidence_interval$lower_bound), + upper_bound = c(y11_corr_all$confidence_interval$upper_bound, + y12_corr_all$confidence_interval$upper_bound, + y21_corr_all$confidence_interval$upper_bound, + y22_corr_all$confidence_interval$upper_bound), + row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + + if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { + #### variable selection ------------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + ## y_11 + expect_silent( + y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_11, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "probit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y11_corr_scad$output$mean, 3.0633399, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_scad$output$SE, 0.049384577, tolerance = 0.0001) ## true value for this sim + expect_false(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int + expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) + + ## y_12 + expect_silent( + y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_12, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "probit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y12_corr_scad$output$mean, 6.9420676, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_scad$output$SE, 0.15578019, tolerance = 0.0001) ## true value for this sim + expect_true(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int + expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) + + ## y_21 + expect_silent( + y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_21, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "probit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y21_corr_scad$output$mean, 0.78324543, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_scad$output$SE, 0.0090654702, tolerance = 0.0001) ## true value for this sim + expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int + expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) + + ## y_22 + expect_silent( + y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_22, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "probit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y22_corr_scad$output$mean, 0.57672297, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_scad$output$SE, 0.011433876, tolerance = 0.0001) ## true value for this sim + expect_false(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int + expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) + + + ## lasso + + # expect_silent( + # y11_corr_lasso <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "probit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "lasso")) + # ) + # + # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) + + ## MCP + + # expect_silent( + # y11_corr_mcp <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "probit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "MCP")) + # ) + # + # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) + + ##### all target variables --------------------------------------------------------------- + + # expect_silent( + # y_all_corr_all <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + Y_12 + Y_21 + Y_22, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "probit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "SCAD", nfolds = 5), + # verbose = T) + # ) + + } + + ## non-linear case ------------------------------------------------------------------------ + #### correctly specified variables -------------------------------------------------------- + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + + expect_equal(y11_corr_one$output$mean, 1.984232, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_one$output$SE, 0.10478658, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int + + + ## for y12 + expect_silent( + y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_12, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + expect_equal(y12_corr_one$output$mean, 5.7851563, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_one$output$SE, 0.20174126, tolerance = 0.0001) ## true value for this sim + expect_false(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int + + + ## for y21 + expect_silent( + y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_21, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + + expect_equal(y21_corr_one$output$mean, 0.61846032, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_one$output$SE, 0.031103296, tolerance = 0.0001) ## true value for this sim + expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int + + ## for y22 + expect_silent( + y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_22, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + + expect_equal(y22_corr_one$output$mean, 0.64509743, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_one$output$SE, 0.030385359, tolerance = 0.0001) ## true value for this sim + expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int + + ##### all target variables --------------------------------------------------------------- + + expect_silent( + y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "probit") + ) + + expect_identical(y_all_corr$output$mean, + c(y11_corr_one$output$mean, y12_corr_one$output$mean, + y21_corr_one$output$mean, y22_corr_one$output$mean)) + + expect_identical(y_all_corr$output$SE, + c(y11_corr_one$output$SE, y12_corr_one$output$SE, + y21_corr_one$output$SE, y22_corr_one$output$SE)) + + expect_identical(y_all_corr$confidence_interval, + data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, + y12_corr_one$confidence_interval$lower_bound, + y21_corr_one$confidence_interval$lower_bound, + y22_corr_one$confidence_interval$lower_bound), + upper_bound = c(y11_corr_one$confidence_interval$upper_bound, + y12_corr_one$confidence_interval$upper_bound, + y21_corr_one$confidence_interval$upper_bound, + y22_corr_one$confidence_interval$upper_bound), + row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + + + + + #### all X variables variables ------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11, + data = sample_B2, + pop_totals = X_totals, + method_selection = "probit") + ) + + expect_equal(y11_corr_all$output$mean, 1.981833, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_all$output$SE, 0.12730647, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int + + + ## for y12 + expect_silent( + y12_corr_all <- nonprob(selection = X_formula, + target = ~ Y_12, + data = sample_B2, + pop_totals = X_totals, + method_selection = "probit") + ) + expect_equal(y12_corr_all$output$mean, 5.6436133, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_all$output$SE, 0.21772187, tolerance = 0.0001) ## true value for this sim + expect_false(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int + + + ## for y21 + expect_silent( + y21_corr_all <- nonprob(selection = X_formula, + target = ~ Y_21, + data = sample_B2, + pop_totals = X_totals, + method_selection = "probit") + ) + + expect_equal(y21_corr_all$output$mean, 0.61562293, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_all$output$SE, 0.033259168, tolerance = 0.0001) ## true value for this sim + expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int + + ## for y22 + expect_silent( + y22_corr_all <- nonprob(selection = X_formula, + target = ~ Y_22, + data = sample_B2, + pop_totals = X_totals, + method_selection = "probit") + ) + + expect_equal(y22_corr_all$output$mean, 0.57173464, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_all$output$SE, 0.028962455, tolerance = 0.0001) ## true value for this sim + expect_false(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int + + ##### all target variables --------------------------------------------------------------- + + expect_silent( + y_all_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B2, + pop_totals = X_totals, + method_selection = "probit") + ) + + expect_identical(y_all_corr_all$output$mean, + c(y11_corr_all$output$mean, y12_corr_all$output$mean, + y21_corr_all$output$mean, y22_corr_all$output$mean)) + + expect_identical(y_all_corr_all$output$SE, + c(y11_corr_all$output$SE, y12_corr_all$output$SE, + y21_corr_all$output$SE, y22_corr_all$output$SE)) + + expect_identical(y_all_corr_all$confidence_interval, + data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, + y12_corr_all$confidence_interval$lower_bound, + y21_corr_all$confidence_interval$lower_bound, + y22_corr_all$confidence_interval$lower_bound), + upper_bound = c(y11_corr_all$confidence_interval$upper_bound, + y12_corr_all$confidence_interval$upper_bound, + y21_corr_all$confidence_interval$upper_bound, + y22_corr_all$confidence_interval$upper_bound), + row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + + if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { + #### variable selection ------------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + # # y_11 + expect_silent( + y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_11, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "probit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y11_corr_scad$output$mean, 1.8810431, tolerance = 0.0001) ## true value for this sim + expect_equal(y11_corr_scad$output$SE, 0.059381198, tolerance = 0.0001) ## true value for this sim + expect_true(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & + y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int + expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) + + ## y_12 + expect_silent( + y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_12, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "probit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y12_corr_scad$output$mean, 5.7967136, tolerance = 0.0001) ## true value for this sim + expect_equal(y12_corr_scad$output$SE, 0.14583128, tolerance = 0.0001) ## true value for this sim + expect_false(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & + y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int + expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) + + # # y_21 + expect_silent( + y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_21, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "probit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y21_corr_scad$output$mean, 0.60600756, tolerance = 0.0001) ## true value for this sim + expect_equal(y21_corr_scad$output$SE, 0.010194928, tolerance = 0.0001) ## true value for this sim + expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & + y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int + expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) + + # # y_22 + expect_silent( + y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_22, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "probit", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + expect_equal(y22_corr_scad$output$mean, 0.64707626, tolerance = 0.0001) ## true value for this sim + expect_equal(y22_corr_scad$output$SE, 0.0099648984, tolerance = 0.0001) ## true value for this sim + expect_true(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & + y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int + expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) + + + ## lasso + + # expect_silent( + # y11_corr_lasso <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "probit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "lasso")) + # ) + # + # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) + + ## MCP + + # expect_silent( + # y11_corr_mcp <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "probit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "MCP")) + # ) + # + # expect_equal(y11_corr_lasso$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_lasso$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + # expect_false(y11_corr_lasso$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_lasso$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_lasso$selection$coefficients) == 2) + + ##### all target variables --------------------------------------------------------------- + + # expect_silent( + # y_all_corr_all <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + # target = ~ Y_11, + Y_12 + Y_21 + Y_22, + # data = sample_B1, + # pop_totals = X_totals[1:11], + # method_selection = "probit", + # control_inference = controlInf(vars_selection = TRUE), + # control_selection = controlSel(penalty = "SCAD", nfolds = 5), + # verbose = T) + # ) + + } + + # check cloglog ----------------------------------------------------- + ## linear case ---------------------------------------------------------------------------- + #### correctly specified variables -------------------------------------------------------- + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "cloglog") + ) + # + # expect_equal(y11_corr_one$output$mean, 2.015028, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_one$output$SE, 0.1713938, tolerance = 0.0001) ## true value for this sim + # expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int + + + # ## for y12 + expect_silent( + y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_12, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "cloglog") + ) + # expect_equal(y12_corr_one$output$mean, 6.617158, tolerance = 0.0001) ## true value for this sim + # expect_equal(y12_corr_one$output$SE, 0.6183295, tolerance = 0.0001) ## true value for this sim + # expect_true(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & + # y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int + # + # + # ## for y21 + # expect_silent( + # y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + # target = ~ Y_21, + # data = sample_B1, + # pop_totals = X_totals[1:5], + # method_selection = "cloglog") + # ) + # + # expect_equal(y21_corr_one$output$mean, 0.6589795, tolerance = 0.0001) ## true value for this sim + # expect_equal(y21_corr_one$output$SE, 0.05471915, tolerance = 0.0001) ## true value for this sim + # expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & + # y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int + # + # ## for y22 + expect_silent( + y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_22, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "cloglog") + ) + # + # expect_equal(y22_corr_one$output$mean, 0.6872036, tolerance = 0.0001) ## true value for this sim + # expect_equal(y22_corr_one$output$SE, 0.06540456, tolerance = 0.0001) ## true value for this sim + # expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & + # y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int + # + # ##### all target variables --------------------------------------------------------------- + # + expect_silent( + y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B1, + pop_totals = X_totals[1:5], + method_selection = "cloglog") + ) + # + # expect_identical(y_all_corr$output$mean, + # c(y11_corr_one$output$mean, y12_corr_one$output$mean, + # y21_corr_one$output$mean, y22_corr_one$output$mean)) + # + # expect_identical(y_all_corr$output$SE, + # c(y11_corr_one$output$SE, y12_corr_one$output$SE, + # y21_corr_one$output$SE, y22_corr_one$output$SE)) + # # + # expect_identical(y_all_corr$confidence_interval, + # data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, + # y12_corr_one$confidence_interval$lower_bound, + # y21_corr_one$confidence_interval$lower_bound, + # y22_corr_one$confidence_interval$lower_bound), + # upper_bound = c(y11_corr_one$confidence_interval$upper_bound, + # y12_corr_one$confidence_interval$upper_bound, + # y21_corr_one$confidence_interval$upper_bound, + # y22_corr_one$confidence_interval$upper_bound), + # row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + # + # + # + # #### all X variables variables TOFIX ------------------------------------------------------------ + # ##### one target variable ---------------------------------------------------------------- + # + # ## for y11 + expect_silent( + y11_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11, + data = sample_B1, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # + # expect_equal(y11_corr_all$output$mean, 1.956418, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_all$output$SE, 0.2019104, tolerance = 0.0001) ## true value for this sim + # expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # + # + # ## for y12 + expect_silent( + y12_corr_all <- nonprob(selection = X_formula, + target = ~ Y_12, + data = sample_B1, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # expect_equal(y12_corr_all$output$mean, 6.571494, tolerance = 0.0001) ## true value for this sim + # expect_equal(y12_corr_all$output$SE, 0.7128783, tolerance = 0.0001) ## true value for this sim + # expect_true(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & + # y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int + # + # + # ## for y21 + expect_silent( + y21_corr_all <- nonprob(selection = X_formula, + target = ~ Y_21, + data = sample_B1, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # + # expect_equal(y21_corr_all$output$mean, 0.6496145, tolerance = 0.0001) ## true value for this sim + # expect_equal(y21_corr_all$output$SE, 0.0575112, tolerance = 0.0001) ## true value for this sim + # expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & + # y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int + # + # ## for y22 + expect_silent( + y22_corr_all <- nonprob(selection = X_formula, + target = ~ Y_22, + data = sample_B1, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # + # expect_equal(y22_corr_all$output$mean, 0.6763156, tolerance = 0.0001) ## true value for this sim + # expect_equal(y22_corr_all$output$SE, 0.06510848, tolerance = 0.0001) ## true value for this sim + # expect_true(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & + # y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int + # + # ##### all target variables --------------------------------------------------------------- + # + expect_silent( + y_all_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B1, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # + # expect_identical(y_all_corr_all$output$mean, + # c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) + # + # expect_identical(y_all_corr_all$output$SE, + # c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) + # + # expect_identical(y_all_corr_all$confidence_interval, + # data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, + # y12_corr_all$confidence_interval$lower_bound, + # y21_corr_all$confidence_interval$lower_bound, + # y22_corr_all$confidence_interval$lower_bound), + # upper_bound = c(y11_corr_all$confidence_interval$upper_bound, + # y12_corr_all$confidence_interval$upper_bound, + # y21_corr_all$confidence_interval$upper_bound, + # y22_corr_all$confidence_interval$upper_bound), + # row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + # + + if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { + + #### variable selection ------------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + ## y_11 to fix + expect_silent( + y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_11, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "cloglog", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + # expect_equal(y11_corr_scad$output$mean, 3.063926, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_scad$output$SE, 0.04853563, tolerance = 0.0001) ## true value for this sim + # expect_false(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) + + ## y_12 to fix + expect_silent( + y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_12, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "cloglog", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + # expect_equal(y12_corr_scad$output$mean, 6.9530644, tolerance = 0.0001) ## true value for this sim + # expect_equal(y12_corr_scad$output$SE, 0.15341599, tolerance = 0.0001) ## true value for this sim + # expect_true(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & + # y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int + # expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) + + ## y_21 to fix + expect_silent( + y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_21, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "cloglog", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + # expect_equal(y21_corr_scad$output$mean, 0.78264707, tolerance = 0.0001) ## true value for this sim + # expect_equal(y21_corr_scad$output$SE, 0.0090012565, tolerance = 0.0001) ## true value for this sim + # expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & + # y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int + # expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) + + ## y_22 to fix + expect_silent( + y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_22, + data = sample_B1, + pop_totals = X_totals[1:11], + method_selection = "cloglog", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + + # expect_equal(y22_corr_scad$output$mean, 0.57680653, tolerance = 0.0001) ## true value for this sim + # expect_equal(y22_corr_scad$output$SE, 0.011240221, tolerance = 0.0001) ## true value for this sim + # expect_false(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & + # y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int + # expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) + + + ## non-linear case ------------------------------------------------------------------------ + #### correctly specified variables -------------------------------------------------------- + ##### one target variable ---------------------------------------------------------------- + + ## for y11 + expect_silent( + y11_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "cloglog") + ) + # + # expect_equal(y11_corr_one$output$mean, 2.10861, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_one$output$SE, 0.1243684, tolerance = 0.0001) ## true value for this sim + # expect_true(y11_corr_one$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_one$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # + # + # ## for y12 + expect_silent( + y12_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_12, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "cloglog") + ) + # expect_equal(y12_corr_one$output$mean, 5.708058, tolerance = 0.0001) ## true value for this sim + # expect_equal(y12_corr_one$output$SE, 0.2604017, tolerance = 0.0001) ## true value for this sim + # expect_false(y12_corr_one$confidence_interval$lower_bound < mean(Y_12) & + # y12_corr_one$confidence_interval$upper_bound > mean(Y_12)) ## conf int + # + # + # ## for y21 + expect_silent( + y21_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_21, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "cloglog") + ) + # + # expect_equal(y21_corr_one$output$mean, 0.6096105, tolerance = 0.0001) ## true value for this sim + # expect_equal(y21_corr_one$output$SE, 0.02698877, tolerance = 0.0001) ## true value for this sim + # expect_true(y21_corr_one$confidence_interval$lower_bound < mean(Y_21) & + # y21_corr_one$confidence_interval$upper_bound > mean(Y_21)) ## conf int + # + # ## for y22 + expect_silent( + y22_corr_one <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_22, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "cloglog") + ) + # + # expect_equal(y22_corr_one$output$mean, 0.6210885, tolerance = 0.0001) ## true value for this sim + # expect_equal(y22_corr_one$output$SE, 0.02561999, tolerance = 0.0001) ## true value for this sim + # expect_true(y22_corr_one$confidence_interval$lower_bound < mean(Y_22) & + # y22_corr_one$confidence_interval$upper_bound > mean(Y_22)) ## conf int + # + + } + # ##### all target variables --------------------------------------------------------------- + # + expect_silent( + y_all_corr <- nonprob(selection = ~ X1 + X2 + X3 + X4, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B2, + pop_totals = X_totals[1:5], + method_selection = "cloglog") + ) + # + # expect_identical(y_all_corr$output$mean, + # c(y11_corr_one$output$mean, y12_corr_one$output$mean, + # y21_corr_one$output$mean, y22_corr_one$output$mean)) + # + # expect_identical(y_all_corr$output$SE, + # c(y11_corr_one$output$SE, y12_corr_one$output$SE, + # y21_corr_one$output$SE, y22_corr_one$output$SE)) + # + # expect_identical(y_all_corr$confidence_interval, + # data.frame(lower_bound = c(y11_corr_one$confidence_interval$lower_bound, + # y12_corr_one$confidence_interval$lower_bound, + # y21_corr_one$confidence_interval$lower_bound, + # y22_corr_one$confidence_interval$lower_bound), + # upper_bound = c(y11_corr_one$confidence_interval$upper_bound, + # y12_corr_one$confidence_interval$upper_bound, + # y21_corr_one$confidence_interval$upper_bound, + # y22_corr_one$confidence_interval$upper_bound), + # row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + + + + + #### all X variables variables ------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + # ## for y11 + expect_silent( + y11_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11, + data = sample_B2, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # + # expect_equal(y11_corr_all$output$mean, 2.045187, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_all$output$SE, 0.1403925, tolerance = 0.0001) ## true value for this sim + # expect_true(y11_corr_all$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_all$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # + # + # ## for y12 + expect_silent( + y12_corr_all <- nonprob(selection = X_formula, + target = ~ Y_12, + data = sample_B2, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # expect_equal(y12_corr_all$output$mean, 5.570961, tolerance = 0.0001) ## true value for this sim + # expect_equal(y12_corr_all$output$SE, 0.267995, tolerance = 0.0001) ## true value for this sim + # expect_false(y12_corr_all$confidence_interval$lower_bound < mean(Y_12) & + # y12_corr_all$confidence_interval$upper_bound > mean(Y_12)) ## conf int + # + # + # ## for y21 + expect_silent( + y21_corr_all <- nonprob(selection = X_formula, + target = ~ Y_21, + data = sample_B2, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # + # expect_equal(y21_corr_all$output$mean, 0.5999782, tolerance = 0.0001) ## true value for this sim + # expect_equal(y21_corr_all$output$SE, 0.02837228, tolerance = 0.0001) ## true value for this sim + # expect_true(y21_corr_all$confidence_interval$lower_bound < mean(Y_21) & + # y21_corr_all$confidence_interval$upper_bound > mean(Y_21)) ## conf int + # + # ## for y22 + expect_silent( + y22_corr_all <- nonprob(selection = X_formula, + target = ~ Y_22, + data = sample_B2, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # + # expect_equal(y22_corr_all$output$mean, 0.558637, tolerance = 0.0001) ## true value for this sim + # expect_equal(y22_corr_all$output$SE, 0.02463264, tolerance = 0.0001) ## true value for this sim + # expect_false(y22_corr_all$confidence_interval$lower_bound < mean(Y_22) & + # y22_corr_all$confidence_interval$upper_bound > mean(Y_22)) ## conf int + # + # ##### all target variables --------------------------------------------------------------- + # + expect_silent( + y_all_corr_all <- nonprob(selection = X_formula, + target = ~ Y_11 + Y_12 + Y_21 + Y_22, + data = sample_B2, + pop_totals = X_totals, + method_selection = "cloglog") + ) + # + # expect_identical(y_all_corr_all$output$mean, + # c(y11_corr_all$output$mean, y12_corr_all$output$mean, y21_corr_all$output$mean, y22_corr_all$output$mean)) + # # + # expect_identical(y_all_corr_all$output$SE, + # c(y11_corr_all$output$SE, y12_corr_all$output$SE, y21_corr_all$output$SE, y22_corr_all$output$SE)) + # # + # expect_identical(y_all_corr_all$confidence_interval, + # data.frame(lower_bound = c(y11_corr_all$confidence_interval$lower_bound, + # y12_corr_all$confidence_interval$lower_bound, + # y21_corr_all$confidence_interval$lower_bound, + # y22_corr_all$confidence_interval$lower_bound), + # upper_bound = c(y11_corr_all$confidence_interval$upper_bound, + # y12_corr_all$confidence_interval$upper_bound, + # y21_corr_all$confidence_interval$upper_bound, + # y22_corr_all$confidence_interval$upper_bound), + # row.names = c("Y_11", "Y_12", "Y_21", "Y_22"))) + + #### variable selection ------------------------------------------------------------------ + ##### one target variable ---------------------------------------------------------------- + + ## y_11 + expect_silent( + y11_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_11, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "cloglog", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + # + # expect_equal(y11_corr_scad$output$mean, 1.992688, tolerance = 0.0001) ## true value for this sim + # expect_equal(y11_corr_scad$output$SE, 0.06352848, tolerance = 0.0001) ## true value for this sim + # expect_true(y11_corr_scad$confidence_interval$lower_bound < mean(Y_11) & + # y11_corr_scad$confidence_interval$upper_bound > mean(Y_11)) ## conf int + # expect_true(NROW(y11_corr_scad$selection$coefficients) == 2) + # + # ## y_12 + expect_silent( + y12_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_12, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "cloglog", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + # + # expect_equal(y12_corr_scad$output$mean, 5.712705, tolerance = 0.0001) ## true value for this sim + # expect_equal(y12_corr_scad$output$SE, 0.1460298, tolerance = 0.0001) ## true value for this sim + # expect_false(y12_corr_scad$confidence_interval$lower_bound < mean(Y_12) & + # y12_corr_scad$confidence_interval$upper_bound > mean(Y_12)) ## conf int + # expect_true(NROW(y12_corr_scad$selection$coefficients) == 2) + # + # ## y_21 + expect_silent( + y21_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_21, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "cloglog", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + # + # expect_equal(y21_corr_scad$output$mean, 0.5955036, tolerance = 0.0001) ## true value for this sim + # expect_equal(y21_corr_scad$output$SE, 0.01039547, tolerance = 0.0001) ## true value for this sim + # expect_false(y21_corr_scad$confidence_interval$lower_bound < mean(Y_21) & + # y21_corr_scad$confidence_interval$upper_bound > mean(Y_21)) ## conf int + # expect_true(NROW(y21_corr_scad$selection$coefficients) == 2) + # + # ## y_22 + expect_silent( + y22_corr_scad <- nonprob(selection = ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10, + target = ~ Y_22, + data = sample_B2, + pop_totals = X_totals[1:11], + method_selection = "cloglog", + control_inference = controlInf(vars_selection = TRUE), + control_selection = controlSel(penalty = "SCAD", nfolds = 5)) + ) + # + # expect_equal(y22_corr_scad$output$mean, 0.621987, tolerance = 0.0001) ## true value for this sim + # expect_equal(y22_corr_scad$output$SE, 0.01026539, tolerance = 0.0001) ## true value for this sim + # # to fix + # # expect_true(y22_corr_scad$confidence_interval$lower_bound < mean(Y_22) & + # # y22_corr_scad$confidence_interval$upper_bound > mean(Y_22)) ## conf int + # expect_true(NROW(y22_corr_scad$selection$coefficients) == 2) +} diff --git a/inst/tinytest/test_methods.R b/inst/tinytest/test_methods.R index 1bf17f0..58d6360 100644 --- a/inst/tinytest/test_methods.R +++ b/inst/tinytest/test_methods.R @@ -111,13 +111,14 @@ expect_silent( residuals(test2a, "pearsonSTD") ) -# expect_silent( -# cooks.distance(test2a) -# ) - -# expect_silent( -# hatvalues(test2a) -# ) +if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { + expect_silent( + cooks.distance(test2a) + ) + expect_silent( + hatvalues(test2a) + ) +} expect_silent( logLik(test2a) @@ -180,13 +181,15 @@ expect_silent( residuals(test3a, "pearsonSTD") ) -# expect_silent( -# cooks.distance(test3a) -# ) -# -# expect_silent( -# hatvalues(test3a) -# ) +if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { + expect_silent( + cooks.distance(test3a) + ) + + expect_silent( + hatvalues(test3a) + ) +} expect_silent( logLik(test3a) diff --git a/inst/tinytest/test_nonprobsvy.R b/inst/tinytest/test_nonprobsvy.R index c88777e..700901b 100644 --- a/inst/tinytest/test_nonprobsvy.R +++ b/inst/tinytest/test_nonprobsvy.R @@ -252,45 +252,45 @@ expect_true( # These tests are only supposed to be run on developer's machine and # package GitHub page not on CRAN (they take too long) -# if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { -# -# expect_silent( -# test1a_bootstrap <- nonprob(selection = ~ x, -# target = ~ y1, -# data = source_nonprob_p, -# method_selection = "logit", -# svydesign = svy_a, -# control_inference = controlInf(var_method = "bootstrap", cores = 1), -# verbose = TRUE) -# ) -# -# -# expect_silent( -# test2a_bootstrap <- nonprob(selection = ~ x, -# outcome = y1 ~ x, -# data = source_nonprob_p, -# method_selection = "logit", -# svydesign = svy_a, -# control_inference = controlInf(var_method = "bootstrap", cores = 1), -# verbose = TRUE) -# ) -# -# -# expect_silent( -# test3a_bootstrap <- nonprob(outcome = y1 ~ x, -# data = source_nonprob_p, -# svydesign = svy_a, -# control_inference = controlInf(var_method = "bootstrap", cores = 1), -# verbose = TRUE) -# ) -# -# -# expect_equivalent(test1a$output$mean, test1a_bootstrap$output$mean, tolerance = 0.1) -# # expect_equivalent(test1a$output$SE, test1a_bootstrap$output$SE, tolerance = 0.1) to check -# -# expect_equivalent(test2a$output$mean, test2a_bootstrap$output$mean, tolerance = 0.1) -# expect_equivalent(test2a$output$SE, test2a_bootstrap$output$SE, tolerance = 0.1) -# -# expect_equivalent(test3a$output$mean, test3a_bootstrap$output$mean, tolerance = 0.1) -# expect_equivalent(test3a$output$SE, test3a_bootstrap$output$SE, tolerance = 0.1) -# } +if (isTRUE(tolower(Sys.getenv("TEST_NONPROBSVY_MULTICORE_DEVELOPER")) == "true")) { + + expect_silent( + test1a_bootstrap <- nonprob(selection = ~ x, + target = ~ y1, + data = source_nonprob_p, + method_selection = "logit", + svydesign = svy_a, + control_inference = controlInf(var_method = "bootstrap", cores = 1), + verbose = TRUE) + ) + + + expect_silent( + test2a_bootstrap <- nonprob(selection = ~ x, + outcome = y1 ~ x, + data = source_nonprob_p, + method_selection = "logit", + svydesign = svy_a, + control_inference = controlInf(var_method = "bootstrap", cores = 1), + verbose = TRUE) + ) + + + expect_silent( + test3a_bootstrap <- nonprob(outcome = y1 ~ x, + data = source_nonprob_p, + svydesign = svy_a, + control_inference = controlInf(var_method = "bootstrap", cores = 1), + verbose = TRUE) + ) + + + expect_equivalent(test1a$output$mean, test1a_bootstrap$output$mean, tolerance = 0.1) + # expect_equivalent(test1a$output$SE, test1a_bootstrap$output$SE, tolerance = 0.1) to check + + expect_equivalent(test2a$output$mean, test2a_bootstrap$output$mean, tolerance = 0.1) + expect_equivalent(test2a$output$SE, test2a_bootstrap$output$SE, tolerance = 0.1) + + expect_equivalent(test3a$output$mean, test3a_bootstrap$output$mean, tolerance = 0.1) + expect_equivalent(test3a$output$SE, test3a_bootstrap$output$SE, tolerance = 0.1) +}