Learn R Programming

bnlearn (version 3.1)

bn.boot: Parametric and nonparametric bootstrap of Bayesian networks

Description

Apply a user-specified function to the Bayesian network structures learned from bootstrap samples of the original data.

Usage

bn.boot(data, statistic, R = 200, m = nrow(data),
  sim = "ordinary", algorithm, algorithm.args = list(),
  statistic.args = list(), cluster = NULL, debug = FALSE)

Arguments

data
a data frame containing the variables in the model.
statistic
a function or a character string (the name of a function) to be applied to each bootstrap replicate.
R
a positive integer, the number of bootstrap replicates.
m
a positive integer, the size of each bootstrap replicate.
sim
a character string indicating the type of simulation required. Possible values are "ordinary" (the default) and "parametric".
algorithm
a character string, the learning algorithm to be applied to the bootstrap replicates. Possible values are gs, iamb, fast.iamb, inter.iamb, mmpc, hc, tabu
algorithm.args
a list of extra arguments to be passed to the learning algorithm.
statistic.args
a list of extra arguments to be passed to the function specified by statistic.
cluster
an optional cluster object from package snow. See snow integration for details and a simple example.
debug
a boolean value. If TRUE a lot of debugging output is printed; otherwise the function is completely silent.

Value

  • A list containing the results of the calls to statistic.

Details

The first argument of statistic is the bn object encoding the network structure learned from the bootstrap sample; the arguments specified in statistics.args are extracted from the list and passed to statitstics as the 2nd, 3rd, etc. arguments.

References

Friedman N, Goldszmidt M, Wyner A (1999). "Data Analysis with Bayesian Networks: A Bootstrap Approach". In "UAI '99: Proceedings of the 15th Annual Conference on Uncertainty in Artificial Intelligence", pp. 196-20. Morgan Kaufmann.

See Also

bn.cv, rbn.

Examples

Run this code
data(learning.test)
bn.boot(data = learning.test, R = 2, m = 500, algorithm = "gs",
  statistic = arcs)
# [[1]]
#      from to
# <arcs for the first replicate>
#
# [[2]]
#      from to
# <arcs for the second replicate>

Run the code above in your browser using DataLab