node.name: a vector of character giving the names of the nodes. It gives the size of the simulated DAG.
data.dists: named list corresponding to the node.name specifying the distribution for each node. If not provided arbitrary distributions are assigned to the nodes.
edge.density: number in [0,1] specifying the edge probability in the dag.
verbose: print more information on the run.
Returns
object of class abnDag consisting of a named matrix, a named list giving the distribution for each node and an empty element for the data.
Details
This function generates DAGs by sampling triangular matrices and reorder columns and rows randomly. The network density (edge.density) is used column-wise as binomial sampling probability. Then the matrix is named using the user-provided names.
Examples
simdag <- simulateDag(node.name = c("a","b","c","d"), edge.density =0.5, data.dists = list(a ="gaussian", b ="binomial", c ="poisson", d ="multinomial"))## Example using Ozon entries:dist <- list(Ozone="gaussian", Solar.R="gaussian", Wind="gaussian", Temp="gaussian", Month="gaussian", Day="gaussian")out <- simulateDag(node.name = names(dist), data.dists = dist, edge.density =0.8)plot(out)