# Calculation of the partition coefficient matrix for soft clustering

### Description

This function calculates partition coefficient for clusters within a range of cluster parameters. It can be used to determine the parameters which lead to uniform clustering.

### Usage

1 |

### Arguments

`eset` |
object of class “ExpressionSet”. |

`crange` |
range of number of clusters |

`mrange` |
range of clustering paramter |

`...` |
additional arguments for underlying |

### Details

Introduced by Bezdek (1981), the partition coefficient F is defined as the sum of squares of values of the partition matrix divided by the number of values. It is maximal if the partition is hard and reaches a minimum for U=1/c when every gene is equally assigned to every cluster.

It is well-known that the partition coefficient tends to decrease monotonically with increasing n. To reduce this tendency we defined a normalized partition coefficient where the partition for uniform partitions are subtracted from the actual partition coefficients (Futschik and Kasabov,2002).

### Value

The function generates the matrix of partition coefficients for
a range of `c`

and `m`

values. It also produces a matrix of normalised
partition coefficients as well as a matrix with partition coefficient for uniform partitions.

### Author(s)

Matthias E. Futschik (http://itb.biologie.hu-berlin.de/~futschik)

### References

J.C.Bezdek, Pattern recognition with fuzzy objective function algorithms, Plenum, 1981

M.E. Futschik and N.K. Kasabov. Fuzzy clustering of gene expression data, Proceedings of World Congress of Computational Intelligence WCCI 2002, Hawaii, IEEE Press, 2002

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | ```
if (interactive()){
data(yeast)
# Data pre-processing
yeastF <- filter.NA(yeast)
yeastF <- fill.NA(yeastF)
yeastF <- standardise(yeastF)
#### parameter selection
yeastFR <- randomise(yeastF)
cl <- mfuzz(yeastFR,c=20,m=1.1)
mfuzz.plot(yeastFR,cl=cl,mfrow=c(4,5)) # shows cluster structures (non-uniform partition)
tmp <- partcoef(yeastFR) # This might take some time.
F <- tmp[[1]];F.n <- tmp[[2]];F.min <- tmp[[3]]
# Which clustering parameters result in a uniform partition?
F > 1.01 * F.min
cl <- mfuzz(yeastFR,c=20,m=1.25) # produces uniform partion
mfuzz.plot(yeastFR,cl=cl,mfrow=c(4,5))
# uniform coloring of temporal profiles indicates uniform partition
}
``` |