首页 > 解决方案 > r,igraph 中数组的有效分配

问题描述

我想创建两个与我所拥有的图的邻接矩阵具有相同维度的矩阵。问题是图太大了。这是我的代码:

AjM<-as_adjacency_matrix(g,attr = "weight")
dim(AjM)

77500 77500

Alpha<-array(0,dim(AjM))

错误:无法分配大小为 44.6 Gb 的向量。AjM 的大小为 18.8Mb。我该怎么做?(我有一台 64 位机器和 12Gb 内存)

标签: rigraph

解决方案


注意as_adjacency_matrix有一个论点sparse。假设您的矩阵的边数少于 77500 * 77500 / 2,则设置sparse=TRUE可能会显着减小生成的邻接矩阵的大小。要使用此选项,您必须Matrix安装软件包。


推荐阅读