Description Usage Arguments Value Author(s) References See Also Examples
View source: R/genperms.custom.R
Generates a permutation matrix by replicating a user-supplied randomization function. Not intended to be used for designs handled by genperms
(i.e., complete randomization of clusters within blocks)
1 | genperms.custom(numiter = 10000, randfun = randfun.default, ...)
|
numiter |
a scalar for the number of replicates, default is 10000 |
randfun |
a user supplied function outputting an N-length binary (0 or 1) vector. Default is an internal function. |
... |
other inputs for |
an N-by-k permutation matrix, where k = numiter
Peter M. Aronow <peter.aronow@yale.edu>; Cyrus Samii <cds2083@nyu.edu>
Gerber, Alan S. and Donald P. Green. 2012. Field Experiments: Design, Analysis, and Interpretation. New York: W.W. Norton.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | ## Rejected randomization scheme: reject if and only if there is significant imbalance
X <- c(1:200)
randfun <- function() {
teststat <- -1
while (teststat < 0.05) {
Zri <- sample(c(rep(0,180),rep(1,20))) # imbalanced design
fstat <- summary(lm(Zri~X))$fstatistic
teststat <- pf(fstat[1],fstat[2],fstat[3],lower.tail=FALSE) # extract F-test p-value
}
return(Zri)
}
perms <- genperms.custom(numiter=10000, randfun=randfun) # generate permutations
probs <- genprob(perms) # generate approximate probabilities from permutation matrix
cor(probs,(X-mean(X))^2) # observations with extreme X are less likely to be treated
|
[1] -0.2011943
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.