使用R跳过csv文件中的注释行

时间:2015-02-10 13:51:15

标签: r csv

我有一个csv文件,看起来像这样 -

    #this is a dataset
    #this contains rows and columns

   ID     value1  value2   value3
   AA       5       6        5
   BB       8       2        9
   CC       3       5        2

我想读取不包括那些注释行的csv文件。有可能读到提到当它是'#'时跳过那些行。但这里的问题是注释后有一个空行,而且对于我不同的csv文件,它可以是各种数量的注释行。但主标题将总是从我想要阅读csv的“ID”开始。

有可能以某种方式指定何时从那里读取ID?如果是,那么请举个例子。

提前致谢!!

3 个答案:

答案 0 :(得分:13)

使用comment.char option

read.delim('filename', comment.char = '#')

默认情况下会自动跳过空行(blank.lines.skip = TRUE)。您还可以通过skip = number指定要跳过的固定行数。但是,无法指定它应该从以'ID'开头的给定行开始读取(但就像我说的那样,这里没有必要)。

答案 1 :(得分:1)

如果您事先知道标题前的行数,可以使用skip选项(此处为3行):

read.table("myfile.csv",skip=3, header=T)

答案 2 :(得分:1)

对于那些寻求tidyverse方法的人来说,这项工作就可以了,就像@Konrad Rudolph的答案一样:

readr::read_delim('filename', comment = '#')