在R中查看巨型CSV文件中的注释

时间:2015-01-05 13:49:07

标签: r unix csv

我有一个巨大的CSV文件太大,无法在我的标准笔记本电脑上的任何文本编辑器中打开。但是,我能够将文件导入R和子集以供使用...但我无法在CSV中查看注释。根据CSV相关的README文件,注释中有关于数据版本的基本信息。信息标题行以'#%'开头。并且评论以' ##'开头。我想我是否可以查看以'#'开头的前20行代码。我将能够提取我需要的信息。

我不清楚grep和head的R帮助文档,但我找到了一个很好的网站,描述了如何在Unix中做我想做的事情(这里:http://bconnelly.net/working-with-csvs-on-the-command-line/)。

用于打印以'#'开头的所有行的Unix代码是:grep"#" input.csv

有谁能告诉我如何在R中这样做?或者至少如何打印以'#'开头的行。在第一个说20行?

1 个答案:

答案 0 :(得分:5)

一个初始" R"这样做的方法是:

grep("^#", readLines("filename.csv"), value=TRUE)

正如Ben Bolker所指出的,您可以为readLines添加限制,以防止R创建一个可能很大的临时对象:

grep("^#", readLines("filename.csv", n=20), value=TRUE)

Ben还指出了如何使用Unix grep(如果相关系统上可用的那个):

readLines(pipe(system('grep "^#" input.csv')))