Description Usage Arguments Details Examples

View source: R/helper_condition_pr_matrix.R

Builds a condition probaability matrix for Horvitz-Thompson estimation from randomizr declaration

1 | ```
declaration_to_condition_pr_mat(declaration)
``` |

`declaration` |
An object of class 'ra_declaration' that contains the experimental design |

This function takes a 'ra_declaration' from the
`declare_ra`

function in randomizr and returns
a 2n*2n matrix that can be used to fully specify the design for
`horvitz_thompson`

estimation. This is done by passing this
matrix to the `condition_pr_mat`

argument of
`horvitz_thompson`

.

Currently, this function can learn the condition probability matrix for a wide variety of randomizations: simple, complete, simple clustered, complete clustered, blocked, block-clustered.

This matrix is made up of four-submatrices, each of which corresponds to the joint and marginal probability that each observation is in one of the two treatment conditions.

The upper-left quadrant is an n*n matrix. On the diagonal is the marginal probability of being in condition 1, often control, for every unit (Pr(Z_i = Condition1) where Z represents the vector of treatment conditions). The off-diagonal elements are the joint probabilities of each unit being in condition 1 with each other unit, Pr(Z_i = Condition1, Z_j = Condition1) where i indexes the rows and j indexes the columns.

The upper-right quadrant is also an n*n matrix. On the diagonal is the joint probability of a unit being in condition 1 and condition 2, often the treatment, and thus is always 0. The off-diagonal elements are the joint probability of unit i being in condition 1 and unit j being in condition 2, Pr(Z_i = Condition1, Z_j = Condition2).

The lower-left quadrant is also an n*n matrix. On the diagonal is the joint probability of a unit being in condition 1 and condition 2, and thus is always 0. The off-diagonal elements are the joint probability of unit i being in condition 2 and unit j being in condition 1, Pr(Z_i = Condition2, Z_j = Condition1).

The lower-right quadrant is an n*n matrix. On the diagonal is the marginal probability of being in condition 2, often treatment, for every unit (Pr(Z_i = Condition2)). The off-diagonal elements are the joint probability of each unit being in condition 2 together, Pr(Z_i = Condition2, Z_j = Condition2).

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | ```
# Learn condition probability matrix from complete clustered design
library(randomizr)
n <- 100
dat <- data.frame(
clusts = sample(letters[1:10], size = n, replace = TRUE),
y = rnorm(n)
)
# Declare complete clustered randomization
cl_declaration <- declare_ra(clusters = dat$clusts, prob = 0.4, simple = FALSE)
# Get probabilities
clust_pr_mat <- declaration_to_condition_pr_mat(cl_declaration)
# Do randomiztion
dat$z <- cl_declaration$ra_function()
horvitz_thompson(y ~ z, data = dat, condition_pr_mat = clust_pr_mat)
# When you pass a declaration to horvitz_thompson, this function is called
horvitz_thompson(y ~ z, data = dat, declaration = cl_declaration)
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.