如何在python中使用kprototype找到最佳集群数

2024-06-11 16:04:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用k原型算法对一些大数据进行聚类。我不能使用K-Means算法,因为我有分类数据和数字数据。通过k原型聚类方法,我已经能够创建集群,如果我定义了我想要的k值。在

如何找到合适的簇数。?在

只有数值数据的流行方法(如肘部法和轮廓评分法)是否适用于混合数据?在


Tags: 数据方法算法定义分类集群数字聚类
3条回答

是的,肘部法可以很好地得到簇数。因为它是基于和的平方和。在

大多数评价方法需要一个距离矩阵。在

然后,他们将处理混合数据,只要你有一个距离函数,有助于解决你的问题。但它们的可扩展性不是很高。在

您可以使用以下代码:

#Choosing optimal K
cost = []
for num_clusters in list(range(1,8)):
    kproto = KPrototypes(n_clusters=num_clusters, init='Cao')
    kproto.fit_predict(Data, categorical=[0,1,2,3,4,5,6,7,8,9])
    cost.append(kproto.cost_)

plt.plot(cost)

来源:https://github.com/aryancodify/Clustering

相关问题 更多 >