我想在read.csv
中使用R
阅读一个大文件。现在,获取与某些模式匹配的行的一种方法是首先获取data-frame
中的所有行,然后仅过滤所需的行。这种方法的问题是文件太大,并且所有数据可能都不适合某些机器的内存。那么有什么方法可以使用grep
或类似的东西与read.csv
一起只获取几条感兴趣的行?
答案 0 :(得分:3)
您不能将read.table
及其衍生物用于此目的。但是,您可以使用readLines
以块的形式读取数据,并将正则表达式应用于每个元素,这对应于一行。
另一种选择是使用像框架这样的数据库。 Package sqldf
可以将csv文件读入SQL数据库。您可以使用SQL查询来只读取所需的行。