| diagnose {blockTools} | R Documentation |
Diagnose whether units assigned to different treatment conditions may be subject to interference or pairwise imbalance
Description
List all pairs of units assigned to different treatment conditions whose difference on a specified variable falls within a specified range.
Usage
diagnose(object, data, id.vars, suspect.var, suspect.range = NULL)
Arguments
object |
a dataframe or list of dataframes of assigned units,
such as output from |
data |
a dataframe with auxiliary information on assigned units,
including the specified variable |
id.vars |
a required string or vector of two strings specifying which
column(s) of |
suspect.var |
a string specifying which column of |
suspect.range |
a vector defining the range of
|
Details
object requires rows to correspond to blocks and columns to
correspond to treatment conditions, such as output from assignment.
data should include identifying variables and variable suspected
of interference or imbalance. Typically, data may be the same
dataframe input into block.
An example of specified identifying variables is id.vars = c("id",
"id2"). Unlike block, diagnose requires that the length of
id.vars correspond to the level of the original blocking. See
block documentation for details.
An example of specified suspect range is suspect.var = "b2",
suspect.range = c(0,50) identifies all units assigned to
different treatment conditions no more than 50 units apart on variable
"b2".
Value
A list of dataframes, each containing a group's pairs of units assigned
to different treatments falling within suspect.range on the
variable suspect.var. The last column of each dataframe displays
the observed difference between the two units.
Author(s)
Ryan T. Moore
See Also
Examples
data(x100)
## First, block
out <- block(x100, groups = "g", n.tr = 2, id.vars = c("id"), block.vars
= c("b1", "b2"), algorithm="optGreedy", distance =
"mahalanobis", level.two = FALSE, valid.var = "b1",
valid.range = c(0,500), verbose = TRUE)
## Second, assign
assg <- assignment(out, seed = 123)
## Third, diagnose
diag <- diagnose(object = assg, data = x100, id.vars = "id",
suspect.var = "b2", suspect.range = c(0,50))