[英]Cannot read file with “#” and space using read.table or read.csv in R
我有一个文件,其中第一行是标题。 标头可以包含空格和#符号(也可以有其他特殊字符)。 我正在尝试使用read.csv或read.table读取此文件,但它不断抛出错误:
undefined columns selected
more columns than column names
我的制表符分隔的chromFile文件看起来像:
Chromosome# Chr chr Size UCSC NCBI36/hg18 NCBIBuild36 NCBIBuild37
1 Chr1 chr1 247199719 247249719 247249719 249250621
2 Chr2 chr2 242751149 242951149 242951149 243199373
命令:
chromosomes <- read.csv(chromFile, sep="\t",skip =0, header = TRUE, )
我想首先寻找一种读取文件的方式,而不用其他可读符号替换空格或#。
从文档( ?read.csv
):
comment.char character:长度为一个的字符向量,包含一个字符或一个空字符串。 使用“”可以完全关闭注释的解释。
默认值为comment.char = "#"
,这comment.char = "#"
您带来麻烦。 根据文档,您应该使用comment.char = ""
。
如mrdwab所指出,标头中的空格是另一个问题,可以通过设置check.names = FALSE
来解决。
chromosomes <- read.csv(chromFile, sep = "\t", skip = 0, header = TRUE,
comment.char = "", check.names = FALSE)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.