finding {gRain} | R Documentation |
Set, retrieve, and retract finding in Bayesian network.
Description
Set, retrieve, and retract finding in Bayesian network. NOTICE: The functions described here are kept only for backward compatibility; please use the corresponding evidence-functions in the future.
Usage
setFinding(object, nodes = NULL, states = NULL, flist = NULL, propagate = TRUE)
Arguments
object |
A "grain" object |
nodes |
A vector of nodes |
states |
A vector of states (of the nodes given by 'nodes') |
flist |
An alternative way of specifying findings, see examples below. |
propagate |
Should the network be propagated? |
Note
NOTICE: The functions described here are kept only for backward compatibility; please use the corresponding evidence-functions in the future:
setEvidence()
is an improvement of setFinding()
(and as such
setFinding
is obsolete). Users are recommended to use
setEvidence()
in the future.
setEvidence()
allows to specification of "hard evidence" (specific
values for variables) and likelihood evidence (also known as virtual
evidence) for variables.
The syntax of setEvidence()
may change in the future.
Author(s)
Søren Højsgaard, sorenh@math.aau.dk
References
Søren Højsgaard (2012). Graphical Independence Networks with the gRain Package for R. Journal of Statistical Software, 46(10), 1-26. https://www.jstatsoft.org/v46/i10/.
See Also
setEvidence
, getEvidence
,
retractEvidence
, pEvidence
,
querygrain
Examples
## setFindings
yn <- c("yes", "no")
a <- cptable(~asia, values=c(1, 99),levels=yn)
t.a <- cptable(~tub+asia, values=c(5, 95, 1, 99),levels=yn)
s <- cptable(~smoke, values=c(5,5), levels=yn)
l.s <- cptable(~lung+smoke, values=c(1, 9, 1, 99), levels=yn)
b.s <- cptable(~bronc+smoke, values=c(6, 4, 3, 7), levels=yn)
e.lt <- cptable(~either+lung+tub,values=c(1, 0, 1, 0, 1, 0, 0, 1),levels=yn)
x.e <- cptable(~xray+either, values=c(98, 2, 5, 95), levels=yn)
d.be <- cptable(~dysp+bronc+either, values=c(9, 1, 7, 3, 8, 2, 1, 9), levels=yn)
chest.cpt <- compileCPT(a, t.a, s, l.s, b.s, e.lt, x.e, d.be)
chest.bn <- grain(chest.cpt)
## These two forms are equivalent
bn1 <- setFinding(chest.bn, nodes=c("chest", "xray"), states=c("yes", "yes"))
bn2 <- setFinding(chest.bn, flist=list(c("chest", "yes"), c("xray", "yes")))
getFinding(bn1)
getFinding(bn2)
pFinding(bn1)
pFinding(bn2)
bn1 <- retractFinding(bn1, nodes="asia")
bn2 <- retractFinding(bn2, nodes="asia")
getFinding(bn1)
getFinding(bn2)
pFinding(bn1)
pFinding(bn2)