我有一些时间序列要做。具体地说,我有一个单变量时间序列,它保存在一个.csv文件中,只有一列,包含超过1M行。实际上,当我尝试用Excel打开csv时,我得到“无法显示所有记录”弹出窗口。我只能查看1048576条记录。我使用R和RStudio进行分析,因此我尝试将此数据集导入RStudio环境。有趣的是,我只能查看与使用Excel等程序完全相同的行数。
我发现的一个简单方法是使用split bash命令拆分原始的csv文件。所以:
split -l 500000 bigdata.csv
生成了4个较小的csv文件(前3个文件包含500k记录),我轻松地将它们导入到4个不同的RStudio时间序列中(我最终将其合并,获得了想要的结果)。
我的问题是:我可以做些什么来避免所有这些过程,并直接加载这样的数据集,而不会丢失最后的行?我已经使用fread()函数尝试了data.table库来加载dataset,但是没有什么好处:加载了相同数量的行。
我在Windows10机器上使用RStudio,内存为6 GB。
编辑:我尝试了memory.limit()命令来检查可供RStudio使用的内存量。结果是"6072",对应于我的6 GB RAM。
发布于 2018-05-31 01:01:52
我就是这么做的,它在RStudio和Visual Studio中都能用R:
df <- read.csv("P:\\ALL.txt", header = TRUE)我的文本文件有1072095行,没有一行在'df‘中被截断。
https://stackoverflow.com/questions/50609772
复制相似问题