# K-Means Clustering for Data Science

K-clustering, also known as k-means clustering, is a popular unsupervised machine learning algorithm used for partitioning a set of data points into K distinct, non-overlapping clusters. In this context, “K” represents the number of clusters the algorithm should create, and it is typically specified by the user before running the algorithm.

The main idea behind k-clustering is to find groups in the data, with each group consisting of data points that are more similar to each other than to data points in other groups. The algorithm aims to minimize the variance or squared Euclidean distance within each cluster. It does this through an iterative process that assigns data points to the nearest cluster center (the centroid of the cluster), recalculates the cluster centers, and repeats until convergence.

Steps for performing K-Means Clustering include:

1. Choose the Number of Clusters (K): Decide how many clusters (piles) you want to create in your data. This is typically determined based on your problem and understanding of the data.
2. Initialize Cluster Centers: Select K initial points as the centers of your clusters. These can be randomly chosen data points or predefined positions.
3. Assign Data Points to Nearest Cluster: For each data point, find the nearest cluster center, and assign the data point to that cluster. This step groups data points into clusters based on their similarity to the cluster center.
4. Recalculate Cluster Centers: Calculate the new center for each cluster by finding the mean (average) of all the data points assigned to that cluster.
5. Repeat Steps 3 and 4: Continue to alternate between assigning data points to clusters and recalculating cluster centers until the clusters no longer change significantly, or a predefined number of iterations is reached.
6. Final Clusters: Once the algorithm converges, you have your K clusters, and the data points are sorted into these clusters.

In summary, it is very effective at clustering data that is not overly-complicated in unusual shapes. Here is an example of how I implemented K-Mean Clustering to a dataset of penguins.

My next step is going to be taking this dataset and using Tableau and Power BI to further analyze and visualize data.

View notebook and dataset on GitHub:

Here is a great video explaining the concepts of K-Means Clustering by TheDataPost on YouTube: https://www.youtube.com/watch?v=R2e3Ls9H_fc

Want to keep up with what I am doing and learning? Enter your email and click subscribe!