在python中聚类巨大的数据矩阵



我想聚类150万种化合物。这意味着拥有 1.5 x 150 万距离矩阵...

我想我可以使用pyTables生成这么大的表,但是现在 - 有了这样一个表,我将如何对它进行聚类?

我想我不能只是将 pyTables 对象传递给 scikit 学习聚类方法之一......

有没有任何基于 python 的框架可以拿走我的巨大表格并用它做一些有用的事情(李聚类)?也许以分布式方式?

也许你应该看看不需要全距离矩阵的算法

我知道将算法表述为矩阵运算很流行,因为像 R 这样的工具在矩阵运算方面相当快(在其他事情上很慢)。但是有大量的方法不需要O(n^2)内存......

我认为主要问题是内存。 1,5 x 1,500 万 x 10B(1 个元素大小)> 20TB您可以使用pyTables,Hadoop http://en.wikipedia.org/wiki/Apache_Hadoop 和MapReduce算法等大数据数据库。

这里有一些指南: http://strata.oreilly.com/2013/03/python-data-tools-just-keep-getting-better.html

或者将Google App Engine Datastore与MapReduce https://developers.google.com/appengine/docs/python/dataprocessing/一起使用 - 但现在它不是生产版本

相关内容

  • 没有找到相关文章

最新更新