Python K-means++ implementation
This implementation is more for my own purposes and to get a better idea of how K-Means++/K-Means work
- Python 3.x
- Numpy
- Matplotlib (optional, to run Testing.py and graph results)
The constructor takes in two arguments, points_list
and k
:
-
points_list
: 2d list containing n-dimensional pointspoints_list = [[Point1], [Point2], etc.]; n-dimensional point x = [X1, X2, ..., Xn]
-
k
: Number of desired clusters/centroids
Calling final_centroids
after creating the object returns the final centroids in the same format as points_list
Seeds from randomly generated data, xโ[0, 100], yโ[0, 50], n = 50, k = 7:
Testing.py is used to create the screenshots, but is not necessary to run K-Means++