从mySQL表生成超大矩阵?

时间:2012-01-27 08:35:18

标签: matrix mysqli cluster-analysis

我有两个MySql表,其中一个包含一组6000个用户,另一组包含10000个为产品提供的评级。我想制作一个特征向量矩阵,如果对特定产品给出评级(甚至是评级值),则表示用户的每一行都是1或0。实现这一目标的最佳方法是什么(假设矩阵稀疏?)。

我很好奇我可以使用我可以使用的工具(如MySQL或Matlab)测试哪些实现 - 最终目的是执行类似用户的群集。不知怎的,我认为一个10,000列的MySQL表不会让我的数据库管理员满意。

谢谢!

1 个答案:

答案 0 :(得分:0)

在SQL中存储稀疏矩阵的显而易见的方法是使用三列,其中userproduct一起是主键,而额外的列是评价

使用SQL数据库进行实际处理没有意义。这只是一个巨大的开销,并使事情变得缓慢。只需将数据输出到原始且快速的数据结构中,进行分析,然后最终以您需要的任何输出格式转换输出。

当您只需要部分数据或必须执行更改,需要锁定以及所有这些时,SQL是很好的。但我永远不会直接在数据库上运行计算,因为除非你可以将低级线性代数库加载到数据库中,否则它会很慢。