# 读取数据
zscoredFile <- read.csv('D:/Rdata/zscoredFile.csv')
set.seed(123) # 设置随机种子
result <- kmeans(zscoredFile, 5) # 建立模型,聚类中心为5
round(result$centers, 3) # 查看聚类中心
table(result$cluster) # 统计不同类别样本的数目
# 画出客户群特征分析雷达图
library(fmsb)
max <- apply(result$centers, 2, max)
min <- apply(result$centers, 2, min)
df <- data.frame(rbind(max, min, result$centers))
radarchart(df = df, seg =5, plty = c(1:5), vlcex = 1, plwd = 2)
# 给雷达图加图例
L <- 1
for(i in 1:5){
legend(1.3, L, legend = paste("客户群", i), lty = i, lwd = 3, col = i, bty = "n")
L <- L - 0.2
}
#Legend函数前两个参数代表图例位置坐标,这里循环输出是为了防止图例覆盖在同一位置,故预先设定好第一个图例位置,再作相应调整已确定其他图例位置。
部分运行结果:
雷达图: