用于产品数据分析的最佳Python集群库

2024-09-30 08:22:44 发布

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

我收集了各种产品的字母数字产品代码。类似的产品在代码上没有内在的相似性,即产品代码“A123”可能意味着“哈利波特第一卷DVD”,而“B123”可能意味着“家乐氏玉米片”。我也没有产品的描述或标识。我只有这个代码的“所有者”。因此,我的数据看起来(以非正常的方式)像这样:

所有者1:产品代码A123、B124、W555、M221、M556127102

所有者2:产品代码D103、Z552、K112、L325423112

所有者3:产品代码G123

。。。。

我有大量的数据。

我想,一个店主——对大多数人来说——会拥有一组数量不确定的类似产品——也就是说,一个店主可能只有两组——哈利波特的所有DVD和书籍,还有一组“铁娘子”CD。我想分析这些数据并确定产品代码之间的距离函数,这样我就可以开始假设产品代码之间的距离有多近,并对产品代码进行聚类(这样我也可以确定所有者有多少组)。我已经开始对文本聚类算法做一些研究,但是有很多种算法可供选择,我不确定哪种算法在这个场景中最有效。

有人能给我指一下最合适的基于python的集群函数/库吗?!


Tags: 数据函数代码算法距离产品字母数字
3条回答

R语言has many packages for finding groups in data,还有python绑定到R,称为RPy。R提供了这里已经提到的一些算法,并且以在大型数据集上的良好性能而闻名。

你得到的是一个二分图。作为一个初步的尝试,听起来你将把邻居列表当作一个0-1向量,在这个向量之间定义某种相似性/相关性。例如,这可能是一个标准化的汉明距离。根据您的操作方式,您将在单个域上获得一个图形—产品代码或所有者。很快就会明白,为什么我把一切都用图形的语言来表达,忍受我吧。现在为什么要坚持使用Python实现呢?对大规模数据进行聚类需要耗费时间和内存。为了摆脱困境,我编写并维护了一个图聚类算法,在生物信息学中得到了广泛的应用。Is是线程化的,接受加权图,并已用于具有数百万个节点和朝向十亿个边的图。有关详细信息,请参阅http://micans.org/mcl/。当然,如果您搜索stackoverflow和stackexchange,您可能会对一些线程感兴趣。我也推荐Louvain方法,只是我不确定它是否接受加权网络,你可能会产生加权网络。

相关问题 更多 >

    热门问题