我有一个非常大的 .csv 文件,大约几个 GB 大小。
我想读取其中的前几千行。
有没有什么高效的方法可以做到这一点?
我有一个非常大的 .csv 文件,大约几个 GB 大小。
我想读取其中的前几千行。
有没有什么高效的方法可以做到这一点?
使用read.csv(...)
中的nrows
参数。
df <- read.csv(file="my.large.file.csv",nrows=2000)
还有一个skip=
参数,告诉read.csv(...)
在开始读取之前要跳过多少行。
如果您的文件很大,最好使用data.table包中的fread(...)
。相同的参数。
scan()
扫描第一行并将n设置为1,然后使用带有skip=
参数的read.csv
函数,并在此之后添加列名。 - Ari B. Friedmanread_csv
函数,选项是 n_max
,请参阅文档(第6页)https://cran.r-project.org/web/packages/readr/readr.pdf。 - Peterread_csv(file="train.csv", n_max=2000)
- Peter如果您使用的是UNIX或OS/X系统,您可以使用命令行:
head -n 1000 myfile.csv > myfile.head.csv
那么就像平常一样在 R 中读取它。
help("read.csv")
中的参数nrows
。 - Rui Barradas