I have used the R package dtwclust to generate clusters for more than a thousand time-series objects.Since I did not have any prior information on the number or validity of clusters, I used a suite of internal CVIs (Cluster Validity Indices) implemented in the same package to compare across 4 different clustering methods, as well as to find the optimum value of k (number of clusters). I tested 6 CVIs:

  • "Sil" (!): Silhouette index (Rousseeuw (1987); to be maximized)
  • "D" (!): Dunn index (Arbelaitz et al. (2013); to be maximized).
  • "COP" (!): COP index (Arbelaitz et al. (2013); to be minimized).
  • "DB" (?): Davies-Bouldin index (Arbelaitz et al. (2013); to be minimized).
  • "DBstar" (?): Modified Davies-Bouldin index (DB*) (Kim and Ramakrishna (2005); to be minimized).
  • "CH" (~): Calinski-Harabasz index (Arbelaitz et al. (2013); to be maximized).
  • "SF" (~): Score Function (Saitta et al. (2007); to be maximized)

across k = 2 to 30 clusters, for 4 crips-clustering algorithms:

  • partitional k-means with Euclidean distance,
  • partitional k-means with Dynamic Time Warping distance,
  • Heirarchical agglomerative with Euclidean distance, and
  • Heirarchical agglomerative with Dynamic Time Warping distance.

I obtained the following plots for CVI-metric (y-axis) versus number of clusters (x-axis) for the different CVIs and for different clustering methods.

I am trying to decide on the optimum k + overall best clustering method based on this result. Can someone help me interpret this plot?

I read the resources here: How to select a clustering method? How to validate a cluster solution (to warrant the method choice)? and useful as they are, I do not see a consistent "sharp bend" or "extremum" across methods and indices. For instance, based on SIL and CH: I would say p-DTW and h-DTW outperform other methods. But based on DB, DBstart and DUNN - I would select h-euclidean over every other method.

Similarly for optimum k: I can see sharp bends at k = 12 for both DB and DBstar, but the sharp extremum for DUNN is at k = 14.

I need help to interpret this plot. I do not think the raw data or the codes are needed as part of this query, but if the moderators feel like I should add that, please let me know. Thanks community.

enter image description here

  • $\begingroup$ Why all of your plots start with k=1? the majority of the criteria used by you begin to evaluate at k=2, as far as I know. I.e., they do not assess the quality of the no-clusters (k=1) solution. If your software does it - then tell us how. $\endgroup$
    – ttnphns
    Commented Jul 29, 2022 at 10:16
  • $\begingroup$ Are you sure your program plots Davies-Bouldin as "to be minimized" and not vise versa? Compare Sil and DB for the light brown line. They both show a small pit opposite k=13 or so. But Sil is "to be maximized", as we know. $\endgroup$
    – ttnphns
    Commented Jul 29, 2022 at 10:30
  • $\begingroup$ All in all, your data seem to lack clear-cut cluster structure. This, however, does not necessarily mean that you should abandon your clustering results altogether. $\endgroup$
    – ttnphns
    Commented Jul 29, 2022 at 10:33
  • $\begingroup$ k is evaluated from 2 to 30. My plotting made the mistake of using incorrect xaxis, so runs from 1 to 29 - My bad. DB index is minimized - I just double checked. I used the function "cvi" from package dtwclust details here (cran.r-project.org/web/packages/dtwclust/dtwclust.pdf). I am manually (visually) assessing my clusters now for different values of k, and under different methods of clustering - would you have any recommendations about what else can I do under such circumstances? Thanks for your inputs. $\endgroup$
    – Mansi
    Commented Jul 29, 2022 at 10:50
  • $\begingroup$ Have you read my lengthy answer stats.stackexchange.com/a/358937/3277 ? Just asking because it is worthy doing. $\endgroup$
    – ttnphns
    Commented Jul 29, 2022 at 10:55

1 Answer 1


I used the post here:Evaluation measures of goodness or validity of clustering (without having truth labels)

and bascially used a multitude of methods, including visual inspection for sharp bends (over absolute maxima/minima) and arrived at k = 15 (14 in the plot above due to faulty axis labels). as the best solution. The clusters look nice and crisp and I can see an obvious similarity in time series within a cluster than across:

enter image description here


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.