## Tests whether "intervention matrices" can correctly be mapped to a 
## targets/target index pair, and vice versa

nreps <- 30
p <- 20
n <- 200

for (i in 1:nreps) {
  A <- matrix(as.logical(rbinom(n*p, 1, 0.01)), nrow = n, ncol = p)
  ## Testing conversion of matrix to list of targets
  target.list <- mat2targets(A)
  if (any(duplicated(target.list$targets)))
    stop("Targets are not unique!")
  for (j in 1:n)
    if (!all.equal(which(A[j, ]), 
      stop("Targets not correctly represented!")
  ## Test back-conversion
  B <- targets2mat(p, target.list$targets, target.list$target.index)
  if (!identical(A, B))
    stop("Intervention matrix not correctly represented!")

Try the pcalg package in your browser

Any scripts or data that you put into this service are public.

pcalg documentation built on June 5, 2018, 1:05 a.m.