We present k-means clustering algorithms: a k-means is its cluster model. The concept is based on spherical clusters that are separable in a way so that the mean value converges towards the cluster center. The clusters are expected to be of similar size, so that the assignment to the nearest cluster center is the correct assignment. When for example applying k-means with a value of {displaystyle k=3} k=3 onto the well-known Iris flower data set, the result often fails to separate the three Iris species contained in the data set. With {displaystyle k=2} k=2, the two visible clusters (one containing two species) will be discovered, whereas with {displaystyle k=3} k=3 one of the two clusters will be split into two even parts. In fact, {displaystyle k=2} k=2 is more appropriate for this data set, despite the data set containing 3 classes. As with any other clustering algorithm, the k-means result relies on the data set to satisfy the assumptions made by the clustering algorithms. It works well on some data sets, while failing on others.