[R] Header in read.table() function
    Erik Iverson 
    eriki at ccbr.umn.edu
       
    Wed Feb  3 22:22:13 CET 2010
    
    
  
Paul Evans wrote:
> Hi,
> 
> I wanted to read in a table that had hyphens in the header / column
> names. When I read it in however, it replaces the hyphens with a dot.
> Which parameter in the read.table function do I need to set to change
> this behaviour? Example code: jm <- matrix(1:4,2,2) rownames(jm) <-
> c('a','b') colnames(jm) <- c('a-1','a-2') 
> write.table(jm,'tjm.out',row.names=T,col.names=T,sep='\t')
> 
> mm <- read.table('tjm.out',row.names=1,header=T,sep='\t',colClasses =
> "character") print(mm) a.1 a.2 a   1   3 b   2   4 I would like 'a-1'
> 'a-2' in the header and not a.1 & a.2 thanks.
read.table is trying to create a data.frame. If you're data.frame had a
column named 'a', what should
> mm$a-1
do? Print out mm$a-1, or subtract 1 from mm$a ?  If you want your
original matrix back (i.e., object of class matrix), you could just use
save/load functions.
I don't think it's possible to have a data.frame with those names, just
as you can't do, say:
a-1 <- 1:10
Erik
I
    
    
More information about the R-help
mailing list