我'm encontering a strange error: I' ve在Ubuntu 16.04机器上创建了一个CSV文件(~450Mb),其中R版本为3.2.3,内存为4Gb . 每次我尝试在具有8Gb和更新版本的Ubuntu / R(Ubuntu 16.10,R版本3.3.1(64位)或Ubuntu 17.04,R版本3.3.2(64位))的机器上读取.sv()此文件,它失败了: Error: memory exhausted (limit reached?)Error: cannot allocate vector of size 1.3 Mb (当我在运行R之前大幅增加ulimit -s) .

该文件在这里:https://mega.nz/#!ZMs0TSRJ!47DCZCnE6_FnICUp8MVS2R9eY_GdVIyGZ5O9TiejHfc

$ ls -ahl trainWhole.csv
-rw------- 1 gyu gyu 462M Mar 14 10:11 trainWhole.csv

$ R --version
R version 3.3.2 (2016-10-31) -- "Sincere Pumpkin Patch"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
...

$ R --no-save --no-restore-data --quiet

11:00:38 R > sessionInfo()
R version 3.3.2 (2016-10-31)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu Zesty Zapus (development branch)

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
 [9] LC_ADDRESS=C               LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices datasets  utils     methods   base

11:19:01 R > df <- read.csv("./trainWhole.csv")
Error: memory exhausted (limit reached?)

我试过修改我的系统限制,没有运气:

$ ulimit -s 819200
$ R --no-save --no-restore-data --quiet
11:00:59 R > df <- read.csv("./trainWhole.csv")
Error: cannot allocate vector of size 1.3 Mb

我在SO上发现了一些类似的问题,但没有可行的解决方案... Error: cannot allocate vector of size X Mb in R R memory management / cannot allocate vector of size n Mb Error: memory exhausted (limit reached?) (R error) Error: cons memory exhausted (limit reached?)

我首先在R-devel上发布了这个问题,但是他们在这里重定向了我......

我不认为实际上存在内存限制问题,因为文件大约是500MB而且我有8GB的RAM,几乎没有任何分开的FF和R:

$ free
              total        used        free      shared  buff/cache   available
Mem:        8043928     1385776     4808796       95288     1849356     6303680
Swap:       4194300           0     4194300

由于一切都在我的Ubuntu 16.04 / 4GB机器上顺畅运行,我会尝试将我的数据保存为RData文件,我几乎可以肯定它会起作用,但我很乐意有一个解释/解决方案来加载更新版本的R / Ubuntu上的CSV文件...

PS:我刚试过,CSV文件在第一代7“eeePC上加载2GB RAM,运行Kali Linux ...