[英]How to use read.csv to read only those lines that matche with some regular expression?
我想在R
使用read.csv
读取一个大文件。 现在获取与某种模式匹配的行的一种方法是首先获取data-frame
中的所有行,然后仅过滤所需的行。 这种方法的问题是文件太大,并且所有数据可能无法放入某些机器的内存中。 那么有什么方法可以使用grep
或类似的东西以及read.csv
来只获取几行感兴趣的行吗?
您不能为此目的使用read.table
及其衍生物。 但是,您可以使用readLines
以块的形式读入数据并将正则表达式应用于每个元素,这对应于一行。
另一种选择是使用类似框架的数据库。 包sqldf
可以将 csv 文件读入 SQL 数据库。 您可以使用 SQL 查询来仅读取所需的行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.