Calculates a cross-tabulated matrix relating two fuzzy membership matrices

crossmemb(x, y, relativize = TRUE)

Arguments

x

A site-by-group fuzzy membership matrix. Alternatively, an object of class 'vegclust' or 'vegclass'.

y

A site-by-group fuzzy membership matrix. Alternatively, an object of class 'vegclust' or 'vegclass'.

relativize

If TRUE expresses the cross-tabulated values as proportions of cluster size in x.

Value

A cross-tabulated matrix comparing the two classifications. In general, each cell's value is the (fuzzy) number of objects that in x are assigned to the cluster corresponding to the row and in y are assigned to the cluster corresponding to the column. If relativize=TRUE then the values of each row are divided by the (fuzzy) size of the corresponding cluster in x.

Author

Miquel De Cáceres, CREAF.

See also

Examples

## Loads data  
data(wetland)
  
## This equals the chord transformation 
## (see also  \code{\link{decostand}} in package vegan)
wetland.chord = as.data.frame(sweep(as.matrix(wetland), 1, 
                              sqrt(rowSums(as.matrix(wetland)^2)), "/"))


## Create clustering with 3 clusters. Perform 10 starts from random seeds 
## and keep the best solution. Try both FCM and NC methods:
wetland.fcm = vegclust(wetland.chord, mobileCenters=3, m = 1.2, method="FCM", nstart=10)
wetland.nc = vegclust(wetland.chord, mobileCenters=3, m = 1.2, dnoise=0.75, method="NC", 
                      nstart=10)

## Compare the results
crossmemb(wetland.fcm, wetland.nc, relativize=FALSE)
#>            M1         M2         M3        N
#> M1  0.2183484 0.04985047 11.9912233 4.725976
#> M2  0.1239766 5.88648228  0.1392505 4.413898
#> M3 11.0733115 0.09100387  0.3648430 1.921837