无法使用"#"读取文件,使用R中的read.table或read.csv读取空格

use*_*306 18 import r read.table

我有一个文件,其中第一行是标题.标题可以包含空格和#符号(也可能有其他特殊字符).我试图使用read.csv或read.table读取此文件,但它一直让我犯错误:

undefined columns selected 

more columns than column names 
Run Code Online (Sandbox Code Playgroud)

我的制表符分隔的chromFile文件如下所示:

Chromosome# Chr chr Size    UCSC NCBI36/hg18    NCBIBuild36 NCBIBuild37
1   Chr1    chr1    247199719   247249719   247249719   249250621
2   Chr2    chr2    242751149   242951149   242951149   243199373
Run Code Online (Sandbox Code Playgroud)

命令:

chromosomes <- read.csv(chromFile, sep="\t",skip =0, header = TRUE,  )
Run Code Online (Sandbox Code Playgroud)

我想首先寻找一种方法来读取文件,而不是替换空格或#与其他可读符号.

flo*_*del 39

从文档(?read.csv):

comment.char character:长度为1的字符向量,包含单个字符或空字符串.使用""完全关闭注释的解释.

默认值是comment.char = "#"导致您麻烦的.在文档之后,您应该使用comment.char = "".

标题中的空格是另一个问题,正如mrdwab所指出的那样,可以通过设置来解决check.names = FALSE.

chromosomes <- read.csv(chromFile, sep = "\t", skip = 0, header = TRUE,
                        comment.char = "", check.names = FALSE)
Run Code Online (Sandbox Code Playgroud)