mpc: Modified Partition Coefficient

View source: R/mpc.R

mpcR Documentation

Modified Partition Coefficient

Description

Computes the Modified Partition Coefficient (Dave, 1996) in order to validate the result of a fuzzy and/or possibilistic clustering analysis.

Usage

mpc(u, m, t=NULL, eta, tidx="f")

Arguments

u

an object of class ‘ppclust’ containing the clustering results from a fuzzy clustering algorithm in the package ppclust. Alternatively, a numeric data frame or matrix containing the membership degrees.

t

a numeric data frame or matrix containing the cluster prototypes. It should be specified if x is not an object of ‘ppclust’ and the option e or g is assigned to tidx.

m

a number specifying the fuzzy exponent. It should be specified if x is not an object of ‘ppclust’.

eta

a number specifying the typicality exponent. It should be specified if x is not an object of ‘ppclust’ and tidx is either e or g.

tidx

a character specifying the type of index. The default is ‘f’ for fuzzy index. The other options are ‘e’ for extended and ‘g’ for generalized index.

Details

Dave's Modified Partition Coefficient (MPC) reduces the monotonic tendency of Partition Coefficient (PC). The formula of MPC is:

I_{MPC}=1-\frac{k}{k-1} \Big(1-∑\limits_{i=1}^n ∑\limits_{j=1}^k u_{ij}^m \Big)

The optimal clustering is found at the maximum value of I_{MPC}.

Value

mpc

MPC index value if tidx is ‘f’

mpc.e

extended MPC index value if tidx is ‘e’

mpc.g

generalized MPC index value if tidx is ‘g’

Author(s)

Zeynel Cebeci

References

Dave, R.N. (1996). Validating fuzzy partition obtained through c-shells clustering. Pattern Recognition Letters, 17 (6):613-623. <doi:10.1016/0167-8655(96)00026-8>

See Also

allindexes, apd, cl, cs, cwb, fhv, fs, kpbm, kwon, mcd, pbm, pc, pe, sc, si, tss, ws, xb

Examples

# Load the dataset iris and use the first four feature columns 
data(iris)
x <- iris[,1:4]

# Run FCM algorithm in the package ppclust 
res.fcm <- ppclust::fcm(x, centers=3)

# Compute the MPC index using res.fcm, which is a ppclust object
idx <- mpc(res.fcm)
print(idx)
 
# Compute the MPC index using the fuzzy membership matrix
idx <- mpc(res.fcm$u)
print(idx)

# Run UPFC algorithm in the package ppclust 
res.upfc <- ppclust::upfc(x, centers=3)
# Compute the generalized MPC index using res.upfc, which is a ppclust object
idx <- mpc(res.upfc, tidx="g")
print(idx)

zcebeci/fcvalid documentation built on Oct. 4, 2022, 9:01 p.m.