【发布时间】:2014-10-10 14:57:22
【问题描述】:
我正在尝试使用 data.table 包中的 fread 打开一个 2.2G 文件,但一直收到相同的错误(它适用于其他文件,1G 难度较小):
library(data.table)
data.table 1.9.4 For help type: ?data.table
*** NB: by=.EACHI is now explicit. See README to restore previous behaviour.
train = data.table::fread('train.csv')
Error in data.table::fread("train.csv") :
file not found: train.csv
当然,该文件存在(read.csv() 有效,但速度很慢)。
我在 i686 上运行 Ubuntu 12.04 LTS。感谢任何帮助!
注意:我正在尝试读取的文件是“train.gz”,可以在以下位置找到: https://www.kaggle.com/c/tradeshift-text-classification/data.
这是一个 2.2G 的 csv 文件,很标准。
编辑:当我使用verbose=TRUE 时,它说:
Input contains no \n. Taking this to be a filename to open
【问题讨论】:
-
你确定你已经设置了正确的工作目录并且
list.files(pattern="train.csv")返回了文件信息? -
这是肯定的,
read.csv工作,认为它很慢。此外,fread适用于同一目录中的其他文件。 -
您使用的是哪个版本的 data.table?对于不存在的文件,我没有收到相同的错误。
-
版本 1.9.4,详见编辑。谢谢!
-
如果文件不存在,它应该给出一个类似
Error in fread("train.csv") : File is empty: /dev/shm/file1231231391的错误。所以它似乎比这更复杂......你有没有在任何其他大文件上尝试过?也许它由于大小而失败,但只是抛出一个误导性错误?
标签: r data.table