K-means聚类分析:年龄、性别、BMI等指标的聚类结果
K-means聚类分析:年龄、性别、BMI等指标的聚类结果
本案例使用K-means聚类算法对年龄、性别、BMI、白细胞计数、红细胞计数、血红蛋白计数、血小板计数等指标进行聚类分析,并通过散点图展示聚类结果。
数据
年龄 性别 BMI 白细胞计数 红细胞计数 血红蛋白计数 血小板计数
56 1 35 7425 4248807 14 112132
46 1 29 12101 4429425 10 129367
57 1 33 4178 4621191 12 151522
59 1 32 3661 4606375 11 187684
58 2 22 11785 3882456 15 131228
42 2 26 11620 4747333 12 177261
48 2 30 7335 4405941 11 216176
44 1 23 10480 4608464 12 148889
45 1 30 6681 4455329 12 98200
37 2 24 4437 4265042 12 166027
36 1 22 6052 4130219 13 144266
45 2 25 9279 4116937 13 203003
34 1 22 5638 4321603 14 141110
40 2 32 11507 4165603 14 222874
58 1 34 8035 4896464 11 149506
61 1 35 10843 4165219 10 197640
55 2 24 8476 4466885 14 163276
56 1 27 6599 4448466 15 190642
35 2 23 4845 4436025 10 111819
57 2 23 5925 4031637 15 116558
33 1 25 9952 4994729 10 109023
41 1 23 7961 4595487 14 94733
39 2 29 7136 4625248 10 211363
33 2 24 6057 4300774 11 222135
43 2 34 6648 4529290 15 109871
51 1 34 11032 4052583 15 94503
39 2 33 5234 4906158 12 190314
55 2 33 5383 3999388 15 182262
58 2 35 7378 3998925 10 201114
47 2 25 7486 4599496 11 167354
61 1 33 11770 4581099 13 125642
37 1 27 6441 4075477 11 118742
41 1 29 10304 4152639 14 120812
60 2 32 7365 4023215 14 222471
40 2 28 3009 4354206 14 95604
58 1 23 10236 4797923 14 101512
36 1 23 4387 4735873 14 177677
47 2 35 11924 3902488 14 97785
50 1 33 10140 4570417 10 209827
43 1 33 5420 4281958 10 186992
59 2 26 6249 4327627 12 138099
33 2 31 5094 4679591 15 123295
56 2 23 4797 4054154 14 175906
41 1 33 5041 4143165 13 120871
59 1 32 6901 4421722 12 212279
47 1 27 7256 3939606 14 197798
50 2 34 8219 4003477 14 217699
39 2 30 4418 4651439 10 184013
48 1 33 6358 4149153 15 120975
代码
# 导入数据
data <- read.csv('data.csv', sep = '\t')
# 标准化处理
data_scale <- scale(data[, 2:7])
# 聚类
set.seed(123)
cluster <- kmeans(data_scale, 3, nstart = 20)
# 查看聚类结果
cluster
# 绘制散点图
library(factoextra)
fviz_cluster(cluster, data_scale, stand = FALSE, geom = 'point', ellipse.type = 'convex')
结果
K-means clustering with 3 clusters of sizes 20, 13, 17
Cluster means:
BMI white_blood_cell red_blood_cell hemoglobin platelet_count
1 -0.8580610 -0.3220903 -0.2345683 -0.7117188 -0.1963474
2 1.0456703 -0.0612901 0.1237586 0.1744389 0.0339192
3 0.0439526 1.3486895 1.2082837 1.1341257 1.0771437
Clustering vector:
[1] 2 1 1 1 3 2 1 2 1 2 2 2 2 3 1 3 2 2 1 1 3 2 1 3 1 3 1 2 2 1 2 1 2 2 1 3 3 2 1 1 2 3 1 1 2 3
Within cluster sum of squares by cluster:
[1] 60.49334 27.53301 54.71923
(between_SS / total_SS = 70.8 %)
Available components:
[1] 'cluster' 'centers' 'totss' 'withinss' 'tot.withinss'
[6] 'betweenss' 'size' 'iter' 'ifault'
散点图
[散点图]
结论
从结果和散点图中可以看出,数据被分成了三类。
- 第一类的人BMI较低,白细胞计数、红细胞计数、血红蛋白计数、血小板计数都比较低;
- 第二类的人BMI较高,其他指标都比较低;
- 第三类的人各项指标都比较高。
注意:
- 本案例仅供参考,实际应用中需根据具体情况进行调整。
- 聚类结果受数据预处理、聚类算法参数等因素的影响。
- 聚类结果的解释需结合实际情况进行分析。
相关知识
- K-means聚类算法
- 数据标准化
- 散点图
原文地址: https://www.cveoy.top/t/topic/owpf 著作权归作者所有。请勿转载和采集!