bnstruct: Bayesian Network Structure Learning from Data with Missing Values

Bayesian Network Structure Learning from Data with Missing Values. The package implements the Silander-Myllymaki complete search, the Max-Min Parents-and-Children, the Hill-Climbing, the Max-Min Hill-climbing heuristic searches, and the Structural Expectation-Maximization algorithm. Available scoring functions are BDeu, AIC, BIC. The package also implements methods for generating and using bootstrap samples, imputed data, inference.

AuthorFrancesco Sambo [aut, cre], Alberto Franzin [aut]
Date of publication2016-12-13 15:33:34
MaintainerFrancesco Sambo <>
LicenseGPL (>= 2) | file LICENSE

View on CRAN

Man pages

add.observations-set: add further evidence to an existing list of observations of...

asia: load 'Asia' dataset.

asia_10000: 'Asia' dataset.

belief.propagation: perform belief propagation.

BN-class: BN class definition.

BNDataset-class: BNDataset class.

bn-method: get the 'BN' object contained in an 'InferenceEngine'.

bn-set: set the original 'BN' object contained in an...

boot: get selected element of bootstrap list.

boots: get list of bootstrap samples of a 'BNDataset'.

boots-set: set list of bootstrap samples of a 'BNDataset'.

bootstrap: Perform bootstrap.

build.junction.tree: build a JunctionTree.

child: load 'Child' dataset.

child_NA_5000: 'Child' dataset.

complete: Subset a 'BNDataset' to get only complete cases.

cpts: get the list of conditional probability tables of a 'BN'.

cpts-set: set the list of conditional probability tables of a network.

dag: get adjacency matrix of a network.

dag-set: set adjacency matrix of an object. convert a DAG to a CPDAG

data.file: get data file of a 'BNDataset'.

data.file-set: set data file of a 'BNDataset'.

discreteness: get status (discrete or continuous) of the variables of an...

discreteness-set: set status (discrete or continuous) of the variables of an...

em: expectation-maximization algorithm.

get.most.probable.values: compute the most probable values to be observed. check whether a 'BNDataset' has bootstrap samples or not. check whether a 'BNDataset' has bootstrap samples from... check if a BNDataset contains impited data. check if a BNDataset contains raw data.

header.file: get header file of a 'BNDataset'.

header.file-set: set header file of a 'BNDataset'. get list of bootstrap samples from imputed data of a... set list of bootstrap samples from imputed data of a...

impute: Impute a 'BNDataset' raw data with missing values. get imputed data of a BNDataset. add imputed data.

InferenceEngine-class: InferenceEngine class.

jpts: get the list of joint probability tables compiled by an...

jpts-set: set the list of joint probability tables compiled by an...

jt.cliques: get the list of cliques of the junction tree of an...

jt.cliques-set: set the list of cliques of the junction tree of an...

junction.tree: get the junction tree of an 'InferenceEngine'.

junction.tree-set: set the junction tree of an 'InferenceEngine'.

knn.impute: Perform imputation of a data frame using k-NN.

layering: return the layering of the nodes. learn a dynamic network (structure and parameters) of a BN... learn a network (structure and parameters) of a BN from a...

learn.params: learn the parameters of a BN.

learn.structure: learn the structure of a network.

marginals: compute the list of inferred marginals of a BN.

name: get name of an object.

name-set: set name of an object.

node.sizes: get size of the variables of an object.

node.sizes-set: set the size of variables of an object. get number of bootstrap samples of a 'BNDataset'. set number of bootstrap samples of a 'BNDataset'.

num.items: get number of items of a 'BNDataset'.

num.items-set: set number of items of a 'BNDataset'.

num.nodes: get number of nodes of an object.

num.nodes-set: set number of nodes of an object.

num.time.steps: get number of time steps observed in a 'BN' or a 'BNDataset'.

num.time.steps-set: set number of time steps of a 'BN' or a 'BNDataset'.

num.variables: get number of variables of a 'BNDataset'.

num.variables-set: set number of variables of a 'BNDataset'.

observations: get the list of observations of an 'InferenceEngine'.

observations-set: set the list of observations of an 'InferenceEngine'.

plot: plot a 'BN' as a picture.

print: print an object to 'stdout'. get raw data of a BNDataset. add raw data.

read.bif: Read a network from a '.bif' file.

read.dataset: Read a dataset from file.

read.dsc: Read a network from a '.dsc' file. Read a network from a '.net' file.

sample.dataset: sample a 'BNDataset' from a network of an inference engine.

sample.row: sample a row vector of values for a network. save a 'BN' picture as '.eps' file.

scoring.func: Read the scoring function used to learn the structure of a...

scoring.func-set: Set the scoring function used to learn the structure of a...

shd: compute the Structural Hamming Distance between two adjacency...

show: Show method for objects.

struct.algo: Read the algorithm used to learn the structure of a network.

struct.algo-set: Set the algorithm used to learn the structure of a network. check if an updated 'BN' is present in an 'InferenceEngine'.

tune.knn.impute: tune the parameter k of the knn algorithm used in imputation. get the updated 'BN' object contained in an... set the updated 'BN' object contained in an...

variables: get variables of an object.

variables-set: set variables of an object.

wpdag: get the WPDAG of an object.

wpdag.from.dag: Initialize a WPDAG from a DAG.

wpdag-set: set WPDAG of the object.

write.dsc: Write a network saving it in a '.dsc' file.

write_xgmml: Write a network saving it in an 'XGMML' file.


add.observations<- Man page
add.observations<-,InferenceEngine-method Man page
asia Man page
asia_10000 Man page
belief.propagation Man page
belief.propagation,InferenceEngine Man page
belief.propagation,InferenceEngine-method Man page
bn Man page
bn<- Man page
BN Man page
BN,BN-class Man page
BN-class Man page
BNDataset Man page
BNDataset,BNDataset-class Man page
BNDataset-class Man page
bn,InferenceEngine Man page
bn<-,InferenceEngine-method Man page
bn,InferenceEngine-method Man page
boot Man page
boot,BNDataset Man page
boot,BNDataset,numeric-method Man page
boots Man page
boots<- Man page
boots,BNDataset Man page
boots<-,BNDataset-method Man page
boots,BNDataset-method Man page
bootstrap Man page
bootstrap,BNDataset Man page
bootstrap,BNDataset-method Man page
build.junction.tree Man page
build.junction.tree,InferenceEngine Man page
build.junction.tree,InferenceEngine-method Man page
child Man page
child_NA_5000 Man page
complete Man page
complete,BNDataset Man page
complete,BNDataset-method Man page
cpts Man page
cpts<- Man page
cpts,BN Man page
cpts<-,BN-method Man page
cpts,BN-method Man page
dag Man page
dag<- Man page
dag,BN Man page
dag<-,BN-method Man page
dag,BN-method Man page Man page
data.file Man page
data.file<- Man page
data.file,BNDataset Man page
data.file<-,BNDataset-method Man page
data.file,BNDataset-method Man page
discreteness Man page
discreteness<- Man page
discreteness,BN Man page
discreteness,BNDataset Man page
discreteness<-,BNDataset-method Man page
discreteness,BNDataset-method Man page
discreteness<-,BN-method Man page
discreteness,BN-method Man page
em Man page
em,InferenceEngine,BNDataset Man page
em,InferenceEngine,BNDataset-method Man page
get.most.probable.values Man page
get.most.probable.values,BN Man page
get.most.probable.values,BN-method Man page
get.most.probable.values,InferenceEngine Man page
get.most.probable.values,InferenceEngine-method Man page Man page,BNDataset Man page,BNDataset-method Man page Man page,BNDataset Man page,BNDataset-method Man page Man page,BNDataset Man page,BNDataset-method Man page Man page,BNDataset Man page,BNDataset-method Man page
header.file Man page
header.file<- Man page
header.file,BNDataset Man page
header.file<-,BNDataset-method Man page
header.file,BNDataset-method Man page Man page<- Man page,BNDataset Man page<-,BNDataset-method Man page,BNDataset-method Man page
impute Man page
impute,BNDataset Man page
impute,BNDataset-method Man page Man page<- Man page,BNDataset Man page<-,BNDataset-method Man page,BNDataset-method Man page
InferenceEngine Man page
InferenceEngine-class Man page
InferenceEngine,InferenceEngine-class Man page
initialize,BNDataset-method Man page
initialize,BN-method Man page
initialize,InferenceEngine-method Man page
jpts Man page
jpts<- Man page
jpts,InferenceEngine Man page
jpts<-,InferenceEngine-method Man page
jpts,InferenceEngine-method Man page
jt.cliques Man page
jt.cliques<- Man page
jt.cliques,InferenceEngine Man page
jt.cliques<-,InferenceEngine-method Man page
jt.cliques,InferenceEngine-method Man page
junction.tree Man page
junction.tree<- Man page
junction.tree,InferenceEngine Man page
junction.tree<-,InferenceEngine-method Man page
junction.tree,InferenceEngine-method Man page
knn.impute Man page
layering Man page
layering,BN Man page
layering,BN-method Man page Man page,BN Man page,BNDataset Man page,BNDataset-method Man page,BN-method Man page Man page,BN Man page,BNDataset Man page,BNDataset-method Man page,BN-method Man page
learn.params Man page
learn.params,BN,BNDataset Man page
learn.params,BN,BNDataset-method Man page
learn.structure Man page
learn.structure,BN,BNDataset Man page
learn.structure,BN,BNDataset-method Man page
marginals Man page
marginals,InferenceEngine Man page
marginals,InferenceEngine-method Man page
name Man page
name<- Man page
name,BN Man page
name,BNDataset Man page
name<-,BNDataset-method Man page
name,BNDataset-method Man page
name<-,BN-method Man page
name,BN-method Man page
node.sizes Man page
node.sizes<- Man page
node.sizes,BN Man page
node.sizes,BNDataset Man page
node.sizes<-,BNDataset-method Man page
node.sizes,BNDataset-method Man page
node.sizes<-,BN-method Man page
node.sizes,BN-method Man page Man page<- Man page,BNDataset Man page<-,BNDataset-method Man page,BNDataset-method Man page
num.items Man page
num.items<- Man page
num.items,BNDataset Man page
num.items<-,BNDataset-method Man page
num.items,BNDataset-method Man page
num.nodes Man page
num.nodes<- Man page
num.nodes,BN Man page
num.nodes<-,BN-method Man page
num.nodes,BN-method Man page
num.nodes,InferenceEngine Man page
num.nodes<-,InferenceEngine-method Man page
num.nodes,InferenceEngine-method Man page
num.time.steps Man page
num.time.steps<- Man page
num.time.steps,BN Man page
num.time.steps,BNDataset Man page
num.time.steps<-,BNDataset-method Man page
num.time.steps,BNDataset-method Man page
num.time.steps<-,BN-method Man page
num.time.steps,BN-method Man page
num.variables Man page
num.variables<- Man page
num.variables,BNDataset Man page
num.variables<-,BNDataset-method Man page
num.variables,BNDataset-method Man page
observations Man page
observations<- Man page
observations,InferenceEngine Man page
observations<-,InferenceEngine-method Man page
observations,InferenceEngine-method Man page
plot Man page
plot,BN Man page
plot.BN Man page
plot.BN,BN Man page
print Man page
print,BN Man page
print,BNDataset Man page
print,BNDataset-method Man page
print,BN-method Man page
print,InferenceEngine Man page
print,InferenceEngine-method Man page Man page<- Man page,BNDataset Man page<-,BNDataset-method Man page,BNDataset-method Man page
read.bif Man page
read.bif,character Man page
read.bif,character-method Man page
read.dataset Man page
read.dataset,BNDataset,character,character Man page
read.dataset,BNDataset,character,character-method Man page
read.dsc Man page
read.dsc,character Man page
read.dsc,character-method Man page Man page,character Man page,character-method Man page
sample.dataset Man page
sample.dataset,BN Man page
sample.dataset,BN-method Man page
sample.dataset,InferenceEngine Man page
sample.dataset,InferenceEngine-method Man page
sample.row Man page
sample.row,BN Man page
sample.row,BN-method Man page Man page,BN,character Man page,BN,character-method Man page
scoring.func Man page
scoring.func<- Man page
scoring.func,BN Man page
scoring.func<-,BN-method Man page
scoring.func,BN-method Man page
shd Man page
show Man page
show,AllTheClasses-method Man page
show,BNDataset-method Man page
show,BN-method Man page
show,InferenceEngine-method Man page
struct.algo Man page
struct.algo<- Man page
struct.algo,BN Man page
struct.algo<-,BN-method Man page
struct.algo,BN-method Man page Man page,InferenceEngine Man page,InferenceEngine-method Man page
tune.knn.impute Man page Man page<- Man page,InferenceEngine Man page<-,InferenceEngine-method Man page,InferenceEngine-method Man page
variables Man page
variables<- Man page
variables,BN Man page
variables,BNDataset Man page
variables<-,BNDataset-method Man page
variables,BNDataset-method Man page
variables<-,BN-method Man page
variables,BN-method Man page
wpdag Man page
wpdag<- Man page
wpdag,BN Man page
wpdag<-,BN-method Man page
wpdag,BN-method Man page
wpdag.from.dag Man page
wpdag.from.dag,BN Man page
wpdag.from.dag,BN-method Man page
write.dsc Man page
write.dsc,BN Man page
write.dsc,BN-method Man page
write_xgmml Man page
write_xgmml,BN Man page
write_xgmml,BN-method Man page


bnstruct/R/AllClasses.R bnstruct/R/AllGenerics.R bnstruct/R/learn-methods.R bnstruct/R/buildJunctionTree-methods.R bnstruct/R/InferenceEngine-methods.R bnstruct/R/cpdag.R bnstruct/R/io.R bnstruct/R/beliefPropagation-methods.R bnstruct/R/BNDataset-methods.R bnstruct/R/ bnstruct/R/init.R bnstruct/R/mmhc.R bnstruct/R/sm.R bnstruct/R/BN-methods.R bnstruct/R/util.R bnstruct/R/imputation.R bnstruct/R/JunctionTree-methods.R bnstruct/R/em.R bnstruct/R/sem.R bnstruct/R/datasets.R bnstruct/R/io-methods.R
bnstruct/man/ bnstruct/man/sample.dataset.Rd bnstruct/man/num.time.steps.Rd bnstruct/man/cpts.Rd bnstruct/man/em.Rd bnstruct/man/name-set.Rd bnstruct/man/ bnstruct/man/bootstrap.Rd bnstruct/man/show.Rd bnstruct/man/jt.cliques.Rd bnstruct/man/complete.Rd bnstruct/man/observations.Rd bnstruct/man/num.time.steps-set.Rd bnstruct/man/ bnstruct/man/write.dsc.Rd bnstruct/man/bn-method.Rd bnstruct/man/sample.row.Rd bnstruct/man/write_xgmml.Rd bnstruct/man/child_NA_5000.Rd bnstruct/man/struct.algo-set.Rd bnstruct/man/discreteness-set.Rd bnstruct/man/node.sizes.Rd bnstruct/man/jpts.Rd bnstruct/man/header.file.Rd bnstruct/man/read.dsc.Rd bnstruct/man/wpdag.Rd bnstruct/man/struct.algo.Rd bnstruct/man/ bnstruct/man/variables-set.Rd bnstruct/man/header.file-set.Rd bnstruct/man/ bnstruct/man/ bnstruct/man/marginals.Rd bnstruct/man/ bnstruct/man/knn.impute.Rd bnstruct/man/get.most.probable.values.Rd bnstruct/man/read.bif.Rd bnstruct/man/bn-set.Rd bnstruct/man/variables.Rd bnstruct/man/ bnstruct/man/ bnstruct/man/ bnstruct/man/shd.Rd bnstruct/man/InferenceEngine-class.Rd bnstruct/man/learn.structure.Rd bnstruct/man/add.observations-set.Rd bnstruct/man/ bnstruct/man/ bnstruct/man/layering.Rd bnstruct/man/num.nodes-set.Rd bnstruct/man/num.variables-set.Rd bnstruct/man/name.Rd bnstruct/man/data.file-set.Rd bnstruct/man/jpts-set.Rd bnstruct/man/discreteness.Rd bnstruct/man/boots-set.Rd bnstruct/man/wpdag.from.dag.Rd bnstruct/man/ bnstruct/man/dag-set.Rd bnstruct/man/observations-set.Rd bnstruct/man/junction.tree-set.Rd bnstruct/man/belief.propagation.Rd bnstruct/man/boot.Rd bnstruct/man/dag.Rd bnstruct/man/data.file.Rd bnstruct/man/num.nodes.Rd bnstruct/man/impute.Rd bnstruct/man/cpts-set.Rd bnstruct/man/ bnstruct/man/BNDataset-class.Rd bnstruct/man/scoring.func-set.Rd bnstruct/man/build.junction.tree.Rd bnstruct/man/num.items-set.Rd bnstruct/man/child.Rd bnstruct/man/jt.cliques-set.Rd bnstruct/man/node.sizes-set.Rd bnstruct/man/ bnstruct/man/wpdag-set.Rd bnstruct/man/BN-class.Rd bnstruct/man/ bnstruct/man/ bnstruct/man/print.Rd bnstruct/man/num.variables.Rd bnstruct/man/asia_10000.Rd bnstruct/man/ bnstruct/man/asia.Rd bnstruct/man/plot.Rd bnstruct/man/tune.knn.impute.Rd bnstruct/man/read.dataset.Rd bnstruct/man/learn.params.Rd bnstruct/man/ bnstruct/man/num.items.Rd bnstruct/man/boots.Rd bnstruct/man/scoring.func.Rd bnstruct/man/ bnstruct/man/junction.tree.Rd

Questions? Problems? Suggestions? or email at

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.