mcnode | R Documentation |
Creates a ‘mcnode’ object from a vector, an array or a ‘mcnode’.
mcdata(data, type=c("V", "U", "VU", "0"), nsv=ndvar(), nsu=ndunc(),
nvariates=1, outm="each")
mcdatanocontrol(data, type=c("V", "U", "VU", "0"), nsv=ndvar(), nsu=ndunc(),
nvariates=1, outm="each")
data |
The numeric/logical vector/matrix/array of data or the ‘mcnode’ object. |
type |
The type of node to be built. By default, a ‘"V"’ node. |
nsv |
The variability dimension (‘type="V"’ or
‘type="VU"’) of the node. By default: the current value in
|
nsu |
The uncertainty dimension (‘type="U"’ or
‘type="VU"’) of the node. By default: the current value in
|
nvariates |
The number of variates. By default: 1 |
outm |
The output of the ‘mcnode’ for multivariates nodes.
May be "each" (default) if output should be provided for each
variates considered independently, "none" for no output or a vector
of name of function(s) (as a character string) that will be applied
on the variates dimension before any output (ex: ‘"mean"’,
‘"median"’, ‘c("min", "max")’). The function should have no
other arguments and send one value per vector of values (ex. do not
use ‘"range"’). Note that the ‘outm’ attribute may be
changed at any time using the |
A ‘mcnode’ object is the basic element of a mc
object. It is an array of dimension ‘(nsv x nsu x nvariates)’.
Four types of ‘mcnode’ exists:
‘"V" mcnode’, for "Variability", are arrays of dimension ‘(nsv x 1 x nvariates)’. The alea in the data should reflect variability of the parameter.
‘"U" mcnode’, for "Uncertainty", are arrays of dimension ‘c(1 x nsu x nvariates)’. The alea in the data should reflect uncertainty of the parameter.
‘"VU" mcnode’, for "Variability and Uncertainty", are arrays of dimension ‘(nsv x nsu x nvariates)’. The alea in the data reflects separated variability (in rows) and uncertainty (in columns) of the parameter.
‘"0" mcnode’, for "Neither Variability or Uncertainty", are arrays of dimension ‘(1 x 1 x nvariates)’. No alea is considered for these nodes. ‘"0" mcnode’ are not necessary in the univariate context (use scalar instead) but may be useful for operations on multivariate nodes.
Multivariate nodes (i.e. ‘nvariates != 1’) should be used for
multivariate distributions implemented in ‘mc2d’
(rmultinomial
, rmultinormal
,
rempiricalD
and rdirichlet
).
For security, recycling rules are limited to fill the array using ‘data’. The general rules is that recycling is only permitted to fill a dimension from 1 to the final size of the dimension.
If the final dimension of the node is ‘(nsv x nsu x nvariates)’ (with ‘nsv = 1’ and ‘nsu = 1’ for ‘"0"’ nodes, ‘nsu = 1’ for ‘"V"’ nodes and ‘nsv = 1’ for ‘"U"’ nodes), ‘mcdata’ accepts :
Vectors of length ‘1’ (recycled on all dimensions), vectors of length ‘(nsv * nsu)’ (filling first the dimension of variability, then the dimension of uncertainty then recycling on nvariates), or vectors of length ‘(nsv * nsu * nvariates)’ (filling first the dimension of variability, then the uncertainty, then the variates).
Matrixes of dimensions ‘(nsv x nsu)’, recycling on variates.
Arrays of dimensions ‘(nsv x nsu x nvariates)’ or ‘(nsv x nsu x 1)’, recycling on variates.
For ‘data’ as ‘mcnode’, recycling is dealt to proper fill the array:
a ‘"V"’ node accepts a ‘"0"’ node of dimension ‘(1 x 1 x nvariates)’ (recycling on variability) or of dimension ‘(1 x 1 x 1)’ (recycling on variability and variates), or a ‘"V"’ node of dimension ‘(nsv x 1 x nvariates)’ or ‘(nsv x 1 x 1)’ (recycling on variates),
a ‘"U"’ node accepts a ‘"0"’ node of dimension ‘(1 x 1 x nvariates)’ (recycling on uncertainty) or of dimension ‘(1 x 1 x 1)’ (recycling on uncertainty and variates), or a ‘"U"’ node of dimension ‘(1 x nsu x nvariates)’, or ‘(1 x nsu x 1)’ (recycling on variates),
a ‘"VU"’ node accepts a ‘"0"’ node of dimension ‘(1 x 1 x nvariates)’ (recycling on variability and uncertainty) or of dimension ‘(1 x 1 x 1)’ (recycling on variability, uncertainty and variates), a ‘"U"’ node of dimension ‘(1 x nsu x nvariates)’(recycling "by row" on the variability dimension), or of dimension ‘(1 x nsu x 1)’(recycled "by row" on the variability dimension then on variates), a ‘"V"’ node of dimension ‘(nsv x 1 x nvariates)’(recycling on the uncertainty dimension) or of dimension ‘(nsv x 1 x 1)’(recycled on the uncertainty dimension then on variates), and a ‘"VU"’ node of dimension ‘(nsv x nsu x nvariates)’ or of dimension ‘(nsv x nsu x 1)’ (recycling on variates).
a ‘"0"’ node accepts a ‘"0"’ node of dimension ‘(1 x 1 x nvariates)’ or ‘(1 x 1 x 1)’ (recycling on variates).
‘mcdatanocontrol’ is a dangerous version of ‘mcnode’ which forces the dimension of data to be ‘(nsv x nsu x nvariates)’ and gives the attributes and the class without any control. This function is useful when your model is tested since it is much more quicker.
An ‘mcnode’ object.
mcstoc
to build a stochastic ‘mcnode’ object,
mcprobtree
to build a stochastic node fro a probability
tree.
Ops.mcnode
for operations on ‘mcnode’ objects.
mc
to build a Monte-Carlo object.
Informations about an mcnode: is.mcnode
,
dimmcnode
, typemcnode
.
To build a correlation structure between ‘mcnode’:
cornode
.
To study ‘mcnode’ objects: print.mcnode
,
summary.mcnode
, plot.mcnode
,
converg
, hist.mcnode
To modify ‘mcnode’ objects: NA.mcnode
oldvar <- ndvar()
oldunc <- ndunc()
ndvar(3)
ndunc(5)
(x0 <- mcdata(100, type="0"))
mcdata(matrix(100), type="0")
(xV <- mcdata(1:ndvar(), type="V"))
mcdata(matrix(1:ndvar(), ncol=1), type="V")
(xU <- mcdata(10*1:ndunc(), type="U"))
mcdata(matrix(10*1:ndunc(), nrow=1), type="U")
(xVU <- mcdata(1:(ndvar()*ndunc()), type="VU"))
mcdata(matrix(1:(ndvar()*ndunc()), ncol=5, nrow=3), type="VU")
##Do not use
## Not run:
mcdata(matrix(1:5, nrow=1), type="VU")
## End(Not run)
##use instead
mcdata(mcdata(matrix(1:ndunc(), nrow=1), type="U"), "VU")
##or
mcdata(matrix(1:ndunc(), nrow=1), type="U") + mcdata(0, "VU")
mcdata(x0, type="0")
mcdata(x0, type="V")
mcdata(xV, type="V")
mcdata(x0, type="U")
mcdata(xU, type="U")
mcdata(x0, type="VU")
mcdata(xU, type="VU")
mcdata(xV, type="VU")
##Multivariates
(x0M <- mcdata(1:2, type="0", nvariates=2))
mcdata(1, type="0", nvariates=2)
(xVM <- mcdata(1:(2*ndvar()), type="V", nvariates=2))
mcdata(1:ndvar(), type="V", nvariates=2)
mcdata(array(1:(2*ndvar()), dim=c(3, 1, 2)), type="V", nvariates=2)
mcdata(1, type="V", nvariates=2)
mcdata(x0, type="V", nvariates=2)
mcdata(x0M, type="V", nvariates=2)
mcdata(xV, type="V", nvariates=2)
mcdata(xVM, type="V", nvariates=2)
(xUM <- mcdata(10*(1:(2*ndunc())), type="U", nvariates=2))
mcdata(array(10*(1:(2*ndunc())), dim=c(1, 5, 2)), type="U", nvariates=2)
mcdata(1, type="U", nvariates=2)
mcdata(x0, type="U", nvariates=2)
mcdata(x0M, type="U", nvariates=2)
mcdata(xU, type="U", nvariates=2)
mcdata(xUM, type="U", nvariates=2)
(xVUM <- mcdata(1:(ndvar()*ndunc()), type="VU", nvariates=2))
mcdata(array(1:(ndvar()*ndunc()), dim=c(3, 5, 2)), type="VU", nvariates=2)
mcdata(1, type="VU", nvariates=2)
mcdata(x0, type="VU", nvariates=2)
mcdata(x0M, type="VU", nvariates=2)
mcdata(xV, type="VU", nvariates=2)
mcdata(xVM, type="VU", nvariates=2)
mcdata(xU, type="VU", nvariates=2)
mcdata(xUM, type="VU", nvariates=2)
mcdata(xVU, type="VU", nvariates=2)
mcdata(xVUM, type="VU", nvariates=2)
ndvar(oldvar)
ndunc(oldunc)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.