我有一个这样的清单:
B分数
B C得分
一个C分数
......
前两列包含变量名称,第三列包含两者之间的分数。变量总数为250,000(A,B,C ....)。得分是浮点数[0,1]。该文件大约为50 GB。分数为1的A,B对已被删除,因为超过一半的条目为1。
我想对数据执行分层聚类。
我应该将线性表格转换为250,000行和250,000列的矩阵吗?或者我应该对数据进行分区并进行聚类吗?
我对此毫无头绪。请帮忙!
感谢。
答案 0 :(得分:0)
您的输入数据已矩阵。 然而,分层聚类通常缩放O(n ^ 3)。这不适用于您的数据集大小。另外,它们通常需要多个矩阵副本。您可能需要1TB的RAM然后... 2 * 8 * 250000 * 250000很多。 一些特殊情况可以在O(n ^ 2)中运行:SLINK可以。如果您的数据排序很好,则应该可以在文件中一次性运行单链接。但是你必须自己实现 。甚至不要考虑使用R或花哨的东西。