View source: R/discdd.misclass.R
discdd.misclass  R Documentation 
Computes the oneleaveout misclassification ratio of the rule assigning T
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.
discdd.misclass(xf, class.var, distance = c("l1", "l2", "chisqsym", "hellinger",
"jeffreys", "jensen", "lp"), crit = 1, p)
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. 
p 
integer. Optional. When 
If xf
is an object of class "folderh"
containing the data:
The T
probability distributions f_t
corresponding to the T
groups of individuals are estimated by frequency distributions within each group.
To the class k
consisting of T_k
groups is associated the probability distribution g_k
,
knowing that when using the oneleaveout method, we do not include the group to assign in its class k
.
The crit
argument selects the estimation method of the g_k
's.
crit=1
The probability distribution g_k
is estimated using the whole data of this class, that is the rows of x
corresponding to the T_k
groups of the class k
.
The estimation of the g_k
's uses the same method as the estimation of the f_t
's.
crit=2
The T_k
probability distributions f_t
are estimated using the corresponding data from xf
. Then they are averaged to obtain an estimation of the density g_k
, that is g_k = \frac{1}{T_k} \, \sum{f_t}
.
If xf
is a list of arrays (or list of tables):
The t^{th}
array is the joint frequency distribution of the t^{th}
group. The frequencies can be absolute or relative.
To the class k
consisting of T_k
groups is associated the probability distribution g_k
,
knowing that when using the oneleaveout method, we do not include the group to assign in its class k
.
The crit
argument selects the estimation method of the g_k
's.
crit=1
g_k = \frac{1}{\sum n_t} \sum n_t f_t
,
where n_t
is the total of xf[[t]]
.
Notice that when xf[[t]]
contains relative frequencies, its total is 1.
That is equivalent to crit=2
.
crit=2
g_k = \frac{1}{T_k} \, \sum f_t
.
Returns an object of class discdd.misclass
, that is a list including:
classification 
data frame with 4 columns:

confusion.mat 
confusion matrix, 
misalloc.per.class 
the misclassification ratio per class, 
misclassed 
the misclassification ratio, 
distances 
matrix with 
proximities 
matrix of the proximity indices (in percents) between the groups and the classes. The proximity between the group 
Rachid Boumaza, Pierre Santagostini, Smail Yousfi, Gilles Hunault, Sabine DemotesMainard
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, 538.
# Example 1 with a folderh obtained by converting numeric variables
data("castles.dated")
stones < castles.dated$stones
periods < castles.dated$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 )
castlefh < folderh(periods, "castle", stones)
# Default: dist="l1", crit=1
discdd.misclass(castlefh, "period")
# Hellinger distance, crit=2
discdd.misclass(castlefh, "period", distance = "hellinger", crit = 2)
# Example 2 with a list of 96 arrays
data("dspgd2015")
data("departments")
classes < departments[, c("coded", "namer")]
names(classes) < c("group", "class")
# Default: dist="l1", crit=1
discdd.misclass(dspgd2015, classes)
# Hellinger distance, crit=2
discdd.misclass(dspgd2015, classes, distance = "hellinger", crit = 2)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.