Perturbs a network
Randomly insert/delete/turn arrows to obtain another network.
perturb(nw,data,prior,degree=size(nw),trylist=vector("list",size(nw)), nocalc=FALSE,timetrace=TRUE)
nw |
an object of class |
data |
a data frame used for learning the network, see
|
prior |
a list containing parameter priors, generated by
|
degree |
an integer, which gives the number of attempts to randomly insert/remove/turn an arrow. |
trylist |
a list used internally for reusing learning of nodes,
see |
nocalc |
a logical. If |
timetrace |
a logical. If |
Given the initial network, a new network is constructed by randomly choosing an action: remove, turn, add. After the action is chosen, we choose randomly among all possibilities of that action. If there are no possibilites, the unchanged network is returned.
A list with two elements that may be accessed using
getnetwork
and gettrylist
. The elements are
nw |
an object of class |
trylist |
an updated list used internally for reusing learning
of nodes, see |
Susanne Gammelgaard Bottcher,
Claus Dethlefsen rpackage.deal@gmail.com.
set.seed(200) data(rats) fit <- network(rats) fit.prior <- jointprior(fit) fit <- getnetwork(learn(fit,rats,fit.prior)) fit.new <- getnetwork(perturb(fit,rats,fit.prior,degree=10)) data(ksl) ksl.nw <- network(ksl) ksl.rand <- getnetwork(perturb(ksl.nw,nocalc=TRUE,degree=10)) plot(ksl.rand)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.