Replace a step in an existing design

replace_step(..., replace)

Arguments

...

bare (unquoted) names of step(s) to replace in a design

replace

bare (unquoted) name of step to be replaced

Details

see modify_design for details.

Examples

my_population <- declare_population(N = 100, noise = rnorm(N)) my_potential_outcomes <- declare_potential_outcomes(Y_Z_0 = noise, Y_Z_1 = noise + rnorm(N, mean = 2, sd = 2)) my_assignment <- declare_assignment(m = 50) my_assignment_2 <- declare_assignment(m = 25) design <- declare_design(my_population, my_potential_outcomes, my_assignment) design
#> #> Design Summary #> #> Step 1 (population): my_population --------------------------------------------- #> #> N = 100 #> #> Added variable: ID #> N_missing N_unique #> 0 100 #> #> Added variable: noise #> min median mean max sd N_missing N_unique #> -2.20 0.10 0.05 2.42 0.98 0 100 #> #> Step 2 (potential outcomes): my_potential_outcomes ----------------------------- #> #> Added variable: Y_Z_0 #> min median mean max sd N_missing N_unique #> -2.20 0.10 0.05 2.42 0.98 0 100 #> #> Added variable: Y_Z_1 #> min median mean max sd N_missing N_unique #> -3.02 1.94 2.14 9.04 2.33 0 100 #> #> Step 3 (assignment): my_assignment --------------------------------------------- #> #> Random assignment procedure: Complete random assignment #> Number of units: 100 #> Number of treatment arms: 2 #> The possible treatment categories are 0 and 1. #> The probabilities of assignment are constant across units. #> #> Added variable: Z #> 0 1 #> Frequency 50 50 #> Proportion 0.50 0.50 #> #> Added variable: Z_cond_prob #> 0.5 #> Frequency 100 #> Proportion 1.00 #>
modify_design(design, replace_step(my_assignment_2, replace = my_assignment))
#> #> Design Summary #> #> Step 1 (population): my_population --------------------------------------------- #> #> N = 100 #> #> Added variable: ID #> N_missing N_unique #> 0 100 #> #> Added variable: noise #> min median mean max sd N_missing N_unique #> -2.84 0.01 0.07 2.23 0.98 0 100 #> #> Step 2 (potential outcomes): my_potential_outcomes ----------------------------- #> #> Added variable: Y_Z_0 #> min median mean max sd N_missing N_unique #> -2.84 0.01 0.07 2.23 0.98 0 100 #> #> Added variable: Y_Z_1 #> min median mean max sd N_missing N_unique #> -3.30 1.82 1.89 7.89 2.12 0 100 #> #> Step 3 (assignment): my_assignment_2 ------------------------------------------- #> #> Random assignment procedure: Complete random assignment #> Number of units: 100 #> Number of treatment arms: 2 #> The possible treatment categories are 0 and 1. #> The probabilities of assignment are constant across units. #> #> Added variable: Z #> 0 1 #> Frequency 75 25 #> Proportion 0.75 0.25 #> #> Added variable: Z_cond_prob #> 0.25 0.75 #> Frequency 25 75 #> Proportion 0.25 0.75 #>
modify_design(design, add_step(dplyr::mutate(income = noise^2), after = my_assignment))
#> #> Design Summary #> #> Step 1 (population): my_population --------------------------------------------- #> #> N = 100 #> #> Added variable: ID #> N_missing N_unique #> 0 100 #> #> Added variable: noise #> min median mean max sd N_missing N_unique #> -2.40 -0.14 -0.06 2.06 0.95 0 100 #> #> Step 2 (potential outcomes): my_potential_outcomes ----------------------------- #> #> Added variable: Y_Z_0 #> min median mean max sd N_missing N_unique #> -2.40 -0.14 -0.06 2.06 0.95 0 100 #> #> Added variable: Y_Z_1 #> min median mean max sd N_missing N_unique #> -2.74 2.03 2.19 7.59 2.02 0 100 #> #> Step 3 (assignment): my_assignment --------------------------------------------- #> #> Random assignment procedure: Complete random assignment #> Number of units: 100 #> Number of treatment arms: 2 #> The possible treatment categories are 0 and 1. #> The probabilities of assignment are constant across units. #> #> Added variable: Z #> 0 1 #> Frequency 50 50 #> Proportion 0.50 0.50 #> #> Added variable: Z_cond_prob #> 0.5 #> Frequency 100 #> Proportion 1.00 #> #> Step 4 (custom data modification): dplyr::mutate(income = noise^2) ------------- #> #> Added variable: income #> min median mean max sd N_missing N_unique #> 0.00 0.37 0.90 5.78 1.18 0 100 #>
modify_design(design, add_step(dplyr::mutate(income = noise^2), before = my_assignment))
#> #> Design Summary #> #> Step 1 (population): my_population --------------------------------------------- #> #> N = 100 #> #> Added variable: ID #> N_missing N_unique #> 0 100 #> #> Added variable: noise #> min median mean max sd N_missing N_unique #> -2.81 -0.12 -0.06 2.79 1.04 0 100 #> #> Step 2 (potential outcomes): my_potential_outcomes ----------------------------- #> #> Added variable: Y_Z_0 #> min median mean max sd N_missing N_unique #> -2.81 -0.12 -0.06 2.79 1.04 0 100 #> #> Added variable: Y_Z_1 #> min median mean max sd N_missing N_unique #> -6.21 2.36 1.98 8.01 2.50 0 100 #> #> Step 3 (custom data modification): dplyr::mutate(income = noise^2) ------------- #> #> Added variable: income #> min median mean max sd N_missing N_unique #> 0.00 0.53 1.08 7.88 1.51 0 100 #> #> Step 4 (assignment): my_assignment --------------------------------------------- #> #> Random assignment procedure: Complete random assignment #> Number of units: 100 #> Number of treatment arms: 2 #> The possible treatment categories are 0 and 1. #> The probabilities of assignment are constant across units. #> #> Added variable: Z #> 0 1 #> Frequency 50 50 #> Proportion 0.50 0.50 #> #> Added variable: Z_cond_prob #> 0.5 #> Frequency 100 #> Proportion 1.00 #>
modify_design(design, remove_step(my_assignment))
#> #> Design Summary #> #> Step 1 (population): my_population --------------------------------------------- #> #> N = 100 #> #> Added variable: ID #> N_missing N_unique #> 0 100 #> #> Added variable: noise #> min median mean max sd N_missing N_unique #> -2.99 0.04 -0.06 2.20 1.03 0 100 #> #> Step 2 (potential outcomes): my_potential_outcomes ----------------------------- #> #> Added variable: Y_Z_0 #> min median mean max sd N_missing N_unique #> -2.99 0.04 -0.06 2.20 1.03 0 100 #> #> Added variable: Y_Z_1 #> min median mean max sd N_missing N_unique #> -4.54 2.23 2.00 8.45 2.49 0 100 #>