我有一个很大的数据框(375,000行和5列),所有变量都是数字。我想使用R中的层次聚类来时空聚类此数据帧。但是,当我尝试计算距离矩阵时,出现以下错误:“距离函数中不允许负长度向量”。是因为超出了计算机的最大内存(16 GB RAM)?还是由于超出了R中任何向量的最大长度,即2 ^ 31-1个元素(约20亿个)?顺便说一句,如何计算我要计算的距离矩阵的长度? 375,000 ^ 2等于将近1000亿吗? 无论如何,我该怎么办?在这种情况下,我还能以某种方式继续使用分层群集吗?
使用kmeans进行集群工作非常好,但是我的主管更喜欢分层集群。
任何提示/建议将不胜感激
P.S。行代表车辆旅行ID,列代表:起点的经度,起点的纬度,终点的经度,终点的纬度和特定日期的出行时间(所有值均按比例缩放所有变量)。
答案 0 :(得分:0)
是的,375000 ^ 2超出了矢量的长度。
矩阵的大小大致为行*列*数据类型的大小。
计算所需的内存量,然后将结果返回给主管。