impute | R Documentation |
Impute missing incidences in relations by averaging all possible completions within a specified family.
relation_impute(x, method = NULL, control = list(), ...)
x |
an endorelation or an ensemble of endorelations. |
method |
character string specifying the method to be used (see
Details). If |
control |
named list of control arguments. Currently, only
|
... |
named list of control arguments, overriding the ones
in |
Endorelations with missing elements (i.e., whose incidence is
NA
) are imputed using one of the methods described as follows.
"omit"
Missing incidences are replaced by zeros, i.e., the corresponding elements are removed from the graph.
"any/F"
The incidences are replaced by arbitrary values suitable for family F, with possible values:
G
General (unrestricted) relations.
L
Linear orders.
W
Weak orders.
O
Partial orders.
L
, W
, and O
can optionally be complemented by
/first
or /last
to further restrict imputed elements
to be placed on top or bottom of the given ordering.
"average/F"
Computes the relation with average
incidences, based on all possible completions as indicated for the
any/F
methods. Note that these completions are not
explicitly generated to compute the averages, and that the
resulting relation will typically be fuzzy.
If x
is an ensemble or more than one solution is requested
using the n
control argument: an ensemble
of endorelations. An endorelation otherwise.
## create a relation with a missing object R <- ranking(1:2, 1:3) print(R) R <- as.relation(R) ## find all suitable completions within L ens <- relation_impute(R, method = "any/L", n = "all") lapply(ens, as.ranking) if(require("Rgraphviz")) plot(ens) ## find 3 suitable partial orders ens <- relation_impute(R, method = "any/O", n = 3) lapply(ens, relation_incidence) if(require("Rgraphviz")) plot(ens) ## compute average completion R1 <- relation_impute(R, method = "average/O") relation_incidence(R1) ## check correctness of averaging R2 <- mean(relation_impute(R, "any/O", n = "all")) stopifnot(all.equal(R1, R2))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.