读取R中的表,注释行以“##”开头

时间:2017-02-21 14:34:51

标签: r

我正在努力用R用Variant Call Format(VCF)读取我的表格。 每个文件都有一些注释行以“##”开头,然后是标题,以“#”开头。

## contig=<ID=OTU1431,length=253>
## contig=<ID=OTU915,length=253>
#CHROM  POS ID  REF ALT QUAL    FILTER  INFO    FORMAT  /home/sega/data/bwa/reads/0015.2142.fastq.q10sorted.bam
Eubacterium_ruminantium_AB008552    56  .   C   T   228 .   DP=212;AD=0,212;VDB=0;SGB=-0.693147;MQ0F=0;AC=2;AN=2;DP4=0,0,0,212;MQ=59    GT:PL   1/1:255,255,0

如何在不丢失标题的情况下阅读此类表格? 将read.table()与comment.char ='##'一起使用会返回错误:“invalid'views.char'参数”

1 个答案:

答案 0 :(得分:5)

如果您想阅读VCF,您也可以尝试使用Biocondcutor中VariantAnnotation的 readVcf https://bioconductor.org/packages/release/bioc/html/VariantAnnotation.html

否则,我强烈推荐data.table中的 fread 功能。 它允许您使用 skip 参数,以便在找到子字符串时开始导入。

e.g。

fread("test.vcf", skip = "CHROM")

应该有用。