View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
CVAP: Cluster Validity Analysis Platform (cluster analysis and validation tool)

Join the 15-year community celebration.

Play games and win prizes!

» Learn more

4.5 | 15 ratings Rate this file 58 Downloads (last 30 days) File Size: 80.5 KB File ID: #14620 Version: 1.3

CVAP: Cluster Validity Analysis Platform (cluster analysis and validation tool)


Kaijun Wang (view profile)


12 Apr 2007 (Updated )

supplying over 17 validity indices and 5 clustering algorithms based on GUI

| Watch this File

File Information

Cluster validation is an important and necessary step in cluster analysis. This visual cluster validation tool CVAP based on GUI provides important tools and convenient analysis environment for validity evaluation of clustering solutions, estimation of the number of clusters and performance comparison between candidate clustering algorithms.

CVAP includes 4 External validity indices, 14 Internal validity indices and 5 clustering algorithms (K-means, PAM, hierarchical clustering and etc.). It supports other clustering algorithms via loading a solution file with class labels, or by adding new codes. And similarity metrics of Euclidean distance and Pearson correlation coefficient are supported.

Some useful information and references are in help files "Readme.txt", please read them first.

Required Products Statistics and Machine Learning Toolbox
MATLAB release MATLAB 7.2 (R2006a)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (31)
11 May 2016 Khalid Al-jabery

follow up with my previous question, I found the answer!

Comment only
11 May 2016 Khalid Al-jabery

Hi All,
I am facing problem with using PAM, it seems that the function pamc in line 158 from the pam function is missing!
have anyone faced the same problem before?
pls, advice?

Comment only
12 Mar 2016 Khalid Al-jabery  
17 Feb 2016 Anis Najar

Hello, the tool does not seem to work properly in Matlab2015a!!

Comment only
10 Feb 2016 Isabel Cristina Pérez Verona

Great tool, very useful.
I´ll like to know how can be added new distances measures to the GUI, since I´ll like try specific measures for the data i´m working with, like Mahalanobis distance.


09 Dec 2015 soumia soumaya

please can you indicate me codes about the (f-meseare index) and (silhouette index)
i'm begginer in matlab and i must prepare a home work this week using these indexes

please help me if it is possible

Comment only
19 Oct 2015 Reinier Millo Sánchez  
30 Sep 2015 Muhammad Azeem

On the main form, DateSet is not loading. ANy suggestions?

Comment only
11 Jul 2015 Bikram Kawan

I am using matlab r2014b. It seems not working with this version. Have anyone tried in this version?

Comment only
17 Nov 2014 nadjoua


Thank you for this work

i am working for my project on dynamic clustering of iris data using pso
i hav used your code for db index in my code
but i have a trouble with the results
most of the papers give 0.45 for the mean value of db index
but i find 0.219 as mean value for db index
can you please indicate me if it is possible

16 May 2014 arturo Garcia

Hola estoy haciendo un trabajo sobre clustering, y necesito validar el grupo de datos.

Comment only
18 Dec 2013 NR P

NR P (view profile)

Please review valid_internal_deviation.m: I believe it has errors in the correction factors for Calinski-Harabasz and Krzanowski-Lai indices, and Davies-Bouldin index estimante apper to derive for incomplete pairwise estimates.

Comment only
18 Dec 2013 NR P

NR P (view profile)

03 Sep 2013 Chenghao

When applying kmeans algorithm with euclidean distance function, kmeans algorithm in valid_clusteringAlgs.m (at line 29 of CVAP 3.7 version) uses the distance function R = 'sqEuclidean';. However, when evaluating with silhouette measure in valid_internal.m(at line of 28), the code uses R = 'euclidean';. I think the same distance function should be used.

11 Jun 2013 Nejc Ilc

Many thanks to the author for his valuable and useful contribution. However, I think there is a bug in the implementation of the Dunn's index.

I have compared results from CVAP with the Julian Ramos' implementation ( and also with R package clValid. Output values from clValid and Ramos' code are identical, whereas the CVAP results are not in an agreement with them. I think there are errors in computing the diameter of clusters and the shortest distance between clusters (function 'valid_sumsqures'). Please, consider revising this part of code.

Comment only
25 Feb 2013 Mitchell Yuwono  
20 Aug 2012 Lucas

Lucas (view profile)

As this was made for an older version of matlab, the pamc.dll is no longer valid.
To solve errors with the pamc function, download the latest mex files from here:

32-bit win => pamc.mexw32
64-bit win => pamc.mexw64

Alternatively, 32-bit windows users can also try renaming the pamc.dll to pamc.mexw32 although this has not been tested.

Comment only
20 Aug 2012 Lucas

Lucas (view profile)

The link below should be :

26 Jan 2012 LI

LI (view profile)

I find there is a problem in the CVAP, when I used the pam.m, it must call the pamc.m, but the pamc.m is not exist in this CVAP

02 Jun 2011 Joseph

Joseph (view profile)

What is the best place to add a validity indices? I saw the place for a new clustering algorithm, but don't see anything similar for indices.

Comment only
02 May 2011 can

can (view profile)

I think this tool is good.

11 Apr 2011 Karin

Karin (view profile)

I am having trouble uploading a data file. Mine is a .txt, but I still get loads of errors. Why?

??? Attempted to access data(:,1); index out of bounds because size(data)=[0,0].
Error in ==> valid_data_load at 18
handles.truelabels = data(:,1);

Comment only
02 Nov 2010 zhen gao

How to use it. When I type "mainCVAP"
It shows "Undefined function or variable 'mainCVAP'". Why?

Comment only
02 Oct 2010 agnes cawas

I'm looking for method to validate the result cluster with k-means and I exactly refuse to know about validate k-means you have any idea?
then i read this article and I want to know how to calculate the error rate of the result for k-means clustering...
is this use SSE(sum square error)?
please replies me...

18 Mar 2010 Cara Tobin

Hello, this model is very user-friendly with the demo files. However, if I have 8000 parameter sets (each with 3 parameters), how does one prepare the input file? I had a matrix of 8000 rows with 3 columns (no classes) and this didnt seem to work. Any suggestions? THANK YOU!! Cara

Comment only
20 Mar 2009 Gilles Criton

Very useful, I have looked for such a tool for a long time. Do you have developed a validity indice for subspace clustering ?

Thank you very much, great job !

07 Oct 2008 Dennis Lorch

Very good tool. Does anyone know how to include alternative distances in this GUI?

02 Jun 2008 Guillermo Quintas

I found this job really good and very usefull. I have include the option of using matrices from the workspace. I thonk that it really improve the usefulness of the GUI.

24 Jan 2008 Leon Kegel

Very useful toolbox.
You have done realy a great job on CVAP!

Comment only
30 Apr 2007 yurniar rica

i need matlab code hierarchical clustering for image...

Comment only
29 Apr 2007 ling zhao

I think your toolbox is just fine. It will be used for me.

23 Apr 2007

new release (version 3.4)

23 Apr 2007

new release (version 3.42)

28 Jul 2008

new release CVAP3.5

01 Jul 2009 1.1

new release CVAP3.6

09 Jul 2009 1.2

new release (version 3.6)

25 Jul 2009 1.3

new release (version 3.7)

Contact us