我尝试仅使用分类变量运行聚类。由于 Kmeans 仅适用于数值数据,是否有可用的聚类技术?
我有 30 个变量,如邮政编码、年龄组、爱好、首选频道、婚姻状况、信用风险(低、中、高)、教育状况等。如果我将每个变量转换为虚拟变量并运行 kmeans,我会有 90 列(30*3 - 假设每个变量有 4 个因子)。这是正确的吗?
基于重叠的相似性度量(k-modes)、基于上下文的相似性度量以及论文分类数据聚类中列出的更多内容将是一个好的开始。由于您已经拥有 k-means 的经验和知识,因此 k-modes 会很容易开始。
或者,您可以使用多项分布的混合。
簇的数量可以通过信息标准(例如,BIC、ICL...)来选择。
如果您可以使用 R,则使用实现此方法的 R 包 VarSelLCM。
或者,您可以在此处尝试来自 pypi 的 LSKkRepresentatives: https://pypi.org/project/lshkrepresentatives/