| discdd.predict {dad} | R Documentation |
Predicting the class of a group of individuals with discriminant analysis of probability distributions.
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 probability distribution associated to the group to assign and the K probability distributions associated to the K classes.
Usage
discdd.predict(xf, class.var, distance = c("l1", "l2", "chisqsym", "hellinger",
"jeffreys", "jensen", "lp"), crit = 1, misclass.ratio = FALSE, p)
Arguments
xf |
object of class
|
class.var |
string (if
|
distance |
The distance or dissimilarity used to compute the distance matrix between the densities. It can be:
|
crit |
1 or 2. In order to select the densities associated to the classes. See Details. |
misclass.ratio |
logical (default |
p |
integer. Optional. When |
Details
If
xfis an object of class"folderh"containing the data:The
Tprobability distributionsf_tcorresponding to theTgroups of individuals are estimated by frequency distributions within each group.To the class
kconsisting ofT_kgroups is associated the probability distributiong_k. Thecritargument selects the estimation method of theg_k's.crit=1The probability distributiong_kis estimated using the whole data of this class, that is the rows ofxcorresponding to theT_kgroups of the classk.The estimation of the
g_k's uses the same method as the estimation of thef_t's.crit=2TheT_kprobability distributionsf_tare estimated using the corresponding data fromxf. Then they are averaged to obtain an estimation of the densityg_k, that isg_k = \frac{1}{T_k} \, \sum{f_t}.
If
xfis a list of arrays (or list of tables):The
t^{th}array is the joint frequency distribution of thet^{th}group. The frequencies can be absolute or relative.To the class
kconsisting ofT_kgroups is associated the probability distributiong_k. Thecritargument selects the estimation method of theg_k's.crit=1g_k = \frac{1}{\sum n_t} \sum n_t f_t, wheren_tis the total ofxf[[t]].Notice that when
xf[[t]]contains relative frequencies, its total is 1. That is equivalent tocrit=2.crit=2g_k = \frac{1}{T_k} \, \sum f_t.
Value
Returns an object of class discdd.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
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)
stones <- rbind(castles.dated$stones, castles.nondated$stones)
periods <- rbind(castles.dated$periods, castles.nondated$periods)
stones$height <- cut(stones$height, breaks = c(19, 27, 40, 71), include.lowest = TRUE)
stones$width <- cut(stones$width, breaks = c(24, 45, 62, 144), include.lowest = TRUE)
stones$edging <- cut(stones$edging, breaks = c(0, 3, 4, 8), include.lowest = TRUE)
stones$boss <- cut(stones$boss, breaks = c(0, 6, 9, 20), include.lowest = TRUE )
castlesfh <- folderh(periods, "castle", stones)
# Default: dist="l1", crit=1
discdd.predict(castlesfh, "period")
# With the calculation of the confusion matrix and misclassification ratio
discdd.predict(castlesfh, "period", misclass.ratio = TRUE)
# Hellinger distance
discdd.predict(castlesfh, "period", distance = "hellinger")
# crit=2
discdd.predict(castlesfh, "period", crit = 2)