fdiscd.predict {dad} | R Documentation |
Predicting the class of a group of individuals with discriminant analysis of probability densities.
Description
Assigns several groups of individuals, one group after another, to the class of groups (among K
classes of groups) which achieves the minimum of the distances or divergences between the density function associated to the group to assign and the K
density functions associated to the K
classes.
Usage
fdiscd.predict(xf, class.var, gaussiand = TRUE,
distance = c("jeffreys", "hellinger", "wasserstein", "l2", "l2norm"),
crit = 1, windowh = NULL, misclass.ratio = FALSE)
Arguments
xf |
object of class
Notice that for the versions earlier than 2.0, fdiscd.predict applied to two data frames. |
class.var |
string. The name of the class variable. |
distance |
The distance or divergence used to compute the distance matrix between the densities. It can be:
If |
crit |
1, 2 or 3. In order to select the densities associated to the classes. See Details. If |
gaussiand |
logical. If If |
windowh |
strictly positive number. If Omitted when |
misclass.ratio |
logical (default |
Details
To the group t
is associated the density denoted f_t
. To the class k
consisting of T_k
groups is associated the density denoted g_k
. The crit
argument selects the estimation method of the K
densities g_k
.
-
The density
g_k
is estimated using the whole data of this class, that is the rows ofx
corresponding to theT_k
groups of the classk
. -
The
T_k
densitiesf_t
are estimated using the corresponding data fromx
. Then they are averaged to obtain an estimation of the densityg_k
, that isg_k = (1/T_k)\sum{f_t}
. -
Each previous density
f_t
is weighted byn_t
(the number of rows ofx
corresponding tof_t
). Then they are averaged, that isg_k = (1/\sum n_t) \sum n_t f_t
.
The last two methods are available only for the L^2
-distance. If the divergences between densities are computed using the Hellinger or Wasserstein distance or Jeffreys measure, only the first of these methods is available.
Value
Returns an object of class fdiscd.predict
, that is a list including:
prediction |
data frame with 3 columns:
|
distances |
matrix with |
proximities |
matrix of the proximities (in percents). The proximity of a group |
confusion.mat |
the confusion matrix (if |
misclassed |
the misclassification ratio (if |
Author(s)
Rachid Boumaza, Pierre Santagostini, Smail Yousfi, Gilles Hunault, Sabine Demotes-Mainard
References
Boumaza, R. (2004). Discriminant analysis with independently repeated multivariate measurements: an L^2
approach. Computational Statistics & Data Analysis, 47, 823-843.
Rudrauf, J.M., Boumaza, R. (2001). Contribution à l'étude de l'architecture médiévale: les caractéristiques des pierres à bossage des châteaux forts alsaciens. Centre de Recherches Archéologiques Médiévales de Saverne, 5, 5-38.
Examples
data(castles.dated)
data(castles.nondated)
castles.stones <- rbind(castles.dated$stones, castles.nondated$stones)
castles.periods <- rbind(castles.dated$periods, castles.nondated$periods)
castlesfh <- folderh(castles.periods, "castle", castles.stones)
# With the L^2-distance
# - crit=1
resultl2.1 <- fdiscd.predict(castlesfh, "period", distance="l2", crit=1)
print(resultl2.1)
# - crit=2
## Not run:
resultl2.2 <- fdiscd.predict(castlesfh, "period", distance="l2", crit=2)
print(resultl2.2)
## End(Not run)
# - crit=3
resultl2.3 <- fdiscd.predict(castlesfh, "period", distance="l2", crit=3)
print(resultl2.3)
# With the Hellinger distance
resulthelling <- fdiscd.predict(castlesfh, "period", distance="hellinger")
print(resulthelling)
# With jeffreys measure
resultjeff <- fdiscd.predict(castlesfh, "period", distance="jeffreys")
print(resultjeff)