Conversion between an intervention matrix and a list of intervention targets
In a data set with n measurements of p variables, intervened variables can be specified in two ways:
with a logical intervention matrix of dimension
n × p, where the entry [i, j] indicates whether
variable j has been intervened in measurement i; or
with a list of (unique) intervention targets and a p-dimensional vector indicating the indices of the intervention targets of the p measurements.
mat2targets(A) targets2mat(p, targets, target.index)
A |
Logical matrix with n rows and p columns, where n
is the sample size of a data set with jointly interventional and
observational data, and p is the number of variables. |
p |
Number of variables |
targets |
List of unique intervention targets |
target.index |
Vector of intervention target indices. The intervention
target of data point |
mat2targets returns a list with two components:
targets |
A list of unique intervention targets. |
target.index |
A vector of intervention target indices. The intervention
target of data point |
Alain Hauser (alain.hauser@bfh.ch)
## Specify interventions using a matrix
p <- 5
n <- 10
A <- matrix(FALSE, nrow = n, ncol = p)
for (i in 1:n) A[i, (i-1) %% p + 1] <- TRUE
## Generate list of intervention targets and corresponding indices
target.list <- mat2targets(A)
for (i in 1:length(target.list$target.index))
sprintf("Intervention target of %d-th data point: %d",
i, target.list$targets[[target.list$target.index[i]]])
## Convert back to matrix representation
all(A == targets2mat(p, target.list$targets, target.list$target.index))Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.