r,igraph中数组的有效分配

时间:2018-05-19 15:17:51

标签: r igraph

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

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

77500 77500

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

错误:无法分配大小为44.6 Gb的矢量 .AjM的大小为18.8Mb。 我怎么能这样做?(我有一台带有12Gb内存的64位机器)

1 个答案:

答案 0 :(得分:0)

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