13

I am learning the K-medoids algorithm so I am sorry if I ask inappropriate questions. As I know,the K-medoids algorithm implements a K-means clustering but use actual data points to be centroid instead of mathematical calculated means.

As I googled online, I found a lot of k-means tools such as GenePattern, geWengh,...etc but not the k-medoids ones. Some nice friends has showed me that at Matlab, there is also one written by some user. However, I am afraid that personal implemented tool may still have some bugs or limitations. Thus, I am wondering if there is some widely used reliable open source software/tools which uses actual data points as centroids to cluster. I need to find out the information about actual centroids so only returning clustering results is not enough. I prefer website online ones but if this is not the case, I am ok to install it to my local machine. Thank you very much,

Cassie
  • 1,179
  • 6
  • 18
  • 30

3 Answers3

11
  1. A k-medoid implmentation in C is available in the C Clustering Library (source, Manual). (note that Cluster 3.0 is an extension of this library, and may not provide k-medoids)

    From the manual:

    In the C Clustering Library, three partitioning algorithms are available: • k-means clustering • k-medians clustering • k-medoids clustering

  2. k-medoids in mlpy, Machine Learning library in Python

  3. k-medoids in Matlab

  4. k-medoids in Java

  5. k-medoids in C++

cyborg
  • 9,989
  • 4
  • 38
  • 56
  • 1
    Thanks for your reply. As I know, k-medians is different from k-medoids. In addition, the Cluster 3.0 tool does not return the centroids as original data points. If I am wrong, please correct me. About other programs and codes, they are nice. However, since they are written by individual persons not by labs such as GenePattern or Cluster3.0, I am a little bit concern about the limitation of them. Anyway, if there is no other solution, I will try to use software from individuals. – Cassie Oct 11 '11 at 23:51
  • @Cassie , The C Clustering Library is a prequel of Cluster 3.0, and it is provided by the same authors in that same page. *k-medoids* (and k-medians) is provided there. Also, *mlpy* is not written by an individual. – cyborg Oct 12 '11 at 06:58
  • The R library cluster provide both k-means and k-medoids. – Riccardo Feb 14 '12 at 23:42
  • 11
    I can't find any k-medoids in mlpy. Has it disappeared? Or does it have another name? – Guillaume Chérel Nov 12 '13 at 10:50
2

Software:

  • ELKI includes several k-means variants, including K-medoids and PAM.
  • GNU R includes on the "flexclust" package variants of k-means and on the "cluster" package.

Source: http://en.wikipedia.org/wiki/K-medoids

0

For Python, I've found a package that implements PAM and Clara: PyCluster

Serendipity
  • 2,216
  • 23
  • 33