Unsupervised Machine Learning in R: K-Means
[This article was first published on R code – data technik, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
K-Means clustering is unsupervised machine learning because there is not a target variable. Clustering can be used to create a target variable, or simply group data by certain characteristics.
Here’s a great and simple way to use R to find clusters, visualize and then tie back to the data source to implement a marketing strategy.
setwd #import dataset ABC <-read.table("AbcBank.csv",header=TRUE, sep=",") #choose variables to be clustered # make sure to exclude ID fields or Dates ABC_num<- ABC[,2:5] #scale the data! so they are all normalized ABC_scaled <-as.data.frame(scale(ABC_num)) #kmeans function k3<- kmeans(ABC_scaled, centers=3, nstart=25) #library with the visualization library(factoextra) fviz_cluster(k3, data=ABC_scaled, ellipse.type="convex", axes =c(1,2), geom="point", label="none", ggtheme=theme_classic()) #check out the centers # remember these are normalized but #higher values are higher values for the original data k3$centers #add the cluster to the original dataset! ABC$Cluster<-as.numeric(k3$cluster)
Check out our awesome clusters:
Repo here with dataset: https://github.com/emileemc/kmeans
To leave a comment for the author, please follow the link and comment on their blog: R code – data technik.
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.