我正试图在R中做一个dcast来生成一个矩阵,如我问的另一个问题所示
但是,我收到一个错误:
错误:无法分配大小为2.8Gb的向量.
我的桌面有8GB的RAM,我正在运行ubuntu 11.10 64位版本.我可能使用了错误的R版本吗?我怎么知道,有没有办法在运行R时确定它?我当然必须有足够的空间来分配这个载体.
错误消息意味着R需要分配另外 2.8Gb的内存来完成您尝试执行的任何操作.这并不意味着它需要分配2.8Gb的最大值.运行top
在一个外壳,而你运行的是R代码和Watch R会如何使用内存,直到它HIST一个点的地址空间中的额外的2.8GB不可用.
你的盒子上有一个大的交换空间吗?我可以很容易地看到你正在做什么使用所有8Gb的RAM加上你所有的交换空间,所以R没有其他地方可以从中获取内存空间,从而抛出错误.
也许您可以尝试以块的形式进行dcast,或尝试使用替代方法而不是使用dcast.如果您需要帮助,请发布另一个Q.