基于相似性聚类项目



我对整个集群和东西都很陌生,所以我在编程的最后一点中有点迷失。在做了一些工作之后,Item和Items_Comp之间已经有了正确的相似性。我有一个下面的示例数据集(值属于Items列):

Items Items_Comp Similarity Item Value
A  B  0.6  50
A  C  0.0  50
A  D  0.0  50
A  E  0.2  50
B  A  0.6  100
B  C  0.2  100
B  D  0.4  100
B  E  0.4  100
C  A  0.0  200
C  B  0.2  200
C  D  0.6  200
C  E  0.6  200
...

我现在想要的是基于相似度将它们聚在一起,如果相似度为>=0.6,它们应该聚在一起,聚类应该以项目值最高的项目命名:

:

Group  Items 
B  A
B  B
C  C
C  D
C  E
...

在python中创建这样一个数据框架的最佳方法是什么?我是否应该使用DBSCAN,因为我不知道集群的数量,以及如何将相似性合并到DBSCAN中?最好的,《路加福音》

DBSCAN在没有圆形聚类时是一种密度聚类方法。如果您只想使用规则(相似性<0.6)你不需要这种算法。然而,如果你想找到一个你没有预料到的规则或新集群,你可以先尝试经典算法,如K-means或CAH,然后尝试DBSCAN。

最新更新