【发布时间】:2023-03-26 03:57:01
【问题描述】:
我想知道如何使用 K-means 对多变量数据集进行聚类。这个数据集中的每个样本都对应一个人(我有 6000 人),每个人都有连续和离散的属性(10 个属性/人)。一个例子:
- person_id:1234
- 姓名:“John Doe”
- 年龄:30
- 身高:“5 英尺 10 英寸”
- salary_value: 5000
- Salary_currency:美元
- is_customer:假
- 公司:“Testing Inc.”
- ...
我已经阅读了multidimensional k-means clustering 上的现有答案,但是数据集中的属性都是连续的。更有用的阅读是关于 clustering algorithm 的关于连续和离散变量的帖子。如后者所述,我接受我可能必须找到一个评估离散状态的函数。但我不能使用 ROCK 或 COBWEB 进行聚类,只能使用 k-means。
我可以使用哪些函数将离散值转换为连续值?此外,有什么方法可以优先考虑属性(比如基于薪水/年龄的聚类比身高更重要),还是应该改进整个方法?
【问题讨论】:
-
如果k-means不是严格要求,那么你也应该看看像HDBSCAN,DBSCAN等聚类算法。希望你看过here。
标签: python machine-learning cluster-analysis k-means