我有一个30GB的大文件要处理。
我试图逐行读取它,因为它无法加载到内存中。
base::readLines
和readr::read_lines_chunked
只能读取从第一行开始到最后一行结束的块。
我想做的是指定如下内容:
read lines 1:100
read lines 101:200
read lines 201:300
read lines 301:400
...
until the end of the file
如果我可以指定要读入的确切行,则可以循环执行此操作,但是我认为以上提到的函数均不允许这样做。
有没有办法做到这一点?
skip
中的readr:read_lines_chunked
参数允许跳过数据文件中的前n
行,但是我需要跳过前n
和后{{ 1}}行。
例如,如果文件有m
行:
跳过第一个1000
和最后一个100
将读入800
答案 0 :(得分:0)
感谢@JamesB,解决方案是:
library("LaF")
get_lines(file, line_numbers=c(100,101))