read.csv.fdff 错误:无法分配大小为 6607642.0 Gb 的向量
Posted
技术标签:
【中文标题】read.csv.fdff 错误:无法分配大小为 6607642.0 Gb 的向量【英文标题】:read.csv.fdff error: cannot allocate vector of size 6607642.0 Gb 【发布时间】:2019-05-05 07:26:46 【问题描述】:我需要将一个 4.5GB 的 csv 文件读入 RStudio,为了克服内存问题,我使用了 ff 包中的 read.ffdf 函数。但是,我仍然收到数据太大的错误消息
错误:无法分配大小为 6607642.0 Gb 的向量
我不知道为什么。非常感谢任何帮助!
options(fftempdir="C:/Users/Documents/")
CRSPDailyff <- read.csv.ffdf(file="CRSP_Daily_Stock_Returns_1995-2015.csv")
【问题讨论】:
没有可重现的例子很难帮助你。无论如何,请尝试使用: data.table 包中的 fread() 。它会给你一个“data.table”类的对象,它与data.frame非常相似,虽然有时很古怪。您可以通过使用 as.data.frame(x) 或在 fread() 的参数中使用 data.table=FALSE 轻松地将其转换为您熟悉的 data.frame。或者,我建议你这篇文章:rstudio-pubs-static.s3.amazonaws.com/… 您是否尝试过使用小块加载数据并使用 rbind 连接每个块? 也许你可以试试data.table
package
试试昨天刚刚出现在 CRAN 上的新 vroom 包。
【参考方案1】:
我怀疑你可以使用 next.rows 参数来克服这个限制。
请尝试:
options(fftempdir="C:/Users/Documents/")
CRSPDailyff <-
read.csv.ffdf(file="CRSP_Daily_Stock_Returns_1995-2015.csv", next.rows = 100000)
用其他值对next.rows进行实验,我个人在校园的4GB机器上使用500000。
其他评论者的使用建议
【讨论】:
以上是关于read.csv.fdff 错误:无法分配大小为 6607642.0 Gb 的向量的主要内容,如果未能解决你的问题,请参考以下文章
致命错误:允许的内存大小为 268435456 字节已用尽(尝试分配 71 字节)
使用 pear :致命错误:允许的内存大小为 134217728 字节已用尽(尝试分配 6144 字节)