CRAN Package Check Results for Package DeclareDesign

Last updated on 2025-12-19 17:49:42 CET.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 1.1.0 7.05 212.93 219.98 OK
r-devel-linux-x86_64-debian-gcc 1.1.0 4.81 141.65 146.46 OK
r-devel-linux-x86_64-fedora-clang 1.1.0 11.00 313.68 324.68 ERROR
r-devel-linux-x86_64-fedora-gcc 1.1.0 11.00 322.79 333.79 ERROR
r-devel-windows-x86_64 1.1.0 11.00 265.00 276.00 OK
r-patched-linux-x86_64 1.1.0 7.38 203.12 210.50 OK
r-release-linux-x86_64 1.1.0 7.00 205.00 212.00 OK
r-release-macos-arm64 1.1.0 OK
r-release-macos-x86_64 1.1.0 8.00 200.00 208.00 OK
r-release-windows-x86_64 1.1.0 12.00 202.00 214.00 OK
r-oldrel-macos-arm64 1.1.0 OK
r-oldrel-macos-x86_64 1.1.0 8.00 199.00 207.00 OK
r-oldrel-windows-x86_64 1.1.0 12.00 274.00 286.00 OK

Check Details

Version: 1.1.0
Check: examples
Result: ERROR Running examples in ‘DeclareDesign-Ex.R’ failed The error most likely occurred in: > ### Name: declare_estimator > ### Title: Declare estimator > ### Aliases: declare_estimator declare_estimators label_estimator > ### method_handler > > ### ** Examples > > > # Setup for examples > design <- + declare_model( + N = 500, + gender = rbinom(N, 1, 0.5), + U = rnorm(N, sd = 0.25), + potential_outcomes(Y ~ rbinom( + N, 1, prob = pnorm(0.2 * Z + 0.2 * gender + 0.1 * Z * gender + U) + )) + ) + + declare_inquiry(ATE = mean(Y_Z_1 - Y_Z_0)) + + declare_sampling(S = complete_rs(N = N, n = 200)) + + declare_assignment(Z = complete_ra(N = N, m = 100)) + + declare_measurement(Y = reveal_outcomes(Y ~ Z)) > > run_design(design) inquiry estimand 1 ATE 0.138 > > # default estimator is lm_robust with tidy summary > design_0 <- + design + + declare_estimator(Y ~ Z, inquiry = "ATE") > > run_design(design_0) inquiry estimand estimator term estimate std.error statistic p.value 1 ATE 0.082 estimator Z 0.01 0.07025926 0.14233 0.8869641 conf.low conf.high df outcome 1 -0.1285525 0.1485525 198 Y > > # Linear regression using lm_robust and tidy summary > design_1 <- + design + + declare_estimator( + formula = Y ~ Z, + .method = lm_robust, + .summary = tidy, + term = "Z", + inquiry = "ATE", + label = "lm_no_controls" + ) > > run_design(design_1) inquiry estimand term estimator estimate std.error statistic p.value 1 ATE 0.106 Z lm_no_controls 0.01 0.06842381 0.146148 0.8839533 conf.low conf.high df outcome 1 -0.124933 0.144933 198 Y > > # Use glance summary function to view model fit statistics > design_2 <- + design + + declare_estimator(.method = lm_robust, + formula = Y ~ Z, + .summary = glance) > > run_design(design_2) inquiry estimand estimator r.squared adj.r.squared statistic p.value 1 ATE 0.062 estimator 0.00490049 -0.0001252651 0.9750754 0.3246228 df.residual nobs se_type 1 198 200 HC2 > > # Custom answer strategies > # A custom estimator should take data as an argument and return a data.frame > # with columns such as "estimate", "std.error", "p.value", "conf.low", "conf.high" > my_estimator <- function(data) { + data.frame(estimate = mean(data$Y)) + } > > # Add a custom estimator to the design, wrapping it in `label_estimator()` > # in order to pass label and inquiry arguments > > design_3 <- + design + + declare_inquiry(Y_bar = mean(Y)) + + declare_estimator(handler = label_estimator(my_estimator), + label = "mean", + inquiry = "Y_bar") > > run_design(design_3) inquiry estimand estimator estimate 1 Y_bar 0.570 mean 0.57 2 ATE 0.136 <NA> NA > > # Use `term` to select particular coefficients > design_4 <- + design + + declare_inquiry(difference_in_cates = mean(Y_Z_1[gender == 1] - Y_Z_0[gender == 1]) - + mean(Y_Z_1[gender == 0] - Y_Z_0[gender == 0])) + + declare_estimator(Y ~ Z * gender, + term = "Z:gender", + inquiry = "difference_in_cates", + .method = lm_robust) > > run_design(design_4) inquiry estimand term estimator estimate std.error 1 difference_in_cates 0.1443609 Z:gender estimator 0.1966622 0.1381796 2 ATE 0.1180000 <NA> <NA> NA NA statistic p.value conf.low conf.high df outcome 1 1.423236 0.1562576 -0.07584754 0.469172 196 Y 2 NA NA NA NA NA <NA> > > if(require("broom")) { + + # Use glm from base R + design_5 <- + design + + declare_estimator(Y ~ Z + gender, + family = "gaussian", + inquiry = "ATE", + .method = glm) + + run_design(design_5) + + # If we use logit, we'll need to estimate the average marginal effect with + # marginaleffects::avg_slopes. We wrap this up in a function we'll pass to + # .summary. + + if(require("marginaleffects")) { + + library(marginaleffects) # for predictions + library(broom) # for tidy + + tidy_avg_slopes <- function(x) { + tidy(avg_slopes(x)) + } + + design_6 <- + design + + declare_estimator( + Y ~ Z + gender, + .method = glm, + family = binomial("logit"), + .summary = tidy_avg_slopes, + term = "Z" + ) + + run_design(design_6) + + # Multiple estimators for one inquiry + + design_7 <- + design + + declare_estimator(Y ~ Z, + .method = lm_robust, + inquiry = "ATE", + label = "OLS") + + declare_estimator( + Y ~ Z + gender, + .method = glm, + family = binomial("logit"), + .summary = tidy_avg_slopes, + inquiry = "ATE", + term = "Z", + label = "logit" + ) + + run_design(design_7) + + } + + } Loading required package: broom Loading required package: marginaleffects Error: Error in step 6 (estimator): Error in `[.data.table`(out, , `:=`(tmp_idx, seq_len(.N)), by = tmp): attempt access index 11/11 in VECTOR_ELT Execution halted Flavors: r-devel-linux-x86_64-fedora-clang, r-devel-linux-x86_64-fedora-gcc