Search code examples
rimportread.tablezero-padding

How to avoid: read.table truncates numeric values beginning with 0


I want to import a table (.txt file) in R with read.table(). One column in my table is an ID with nine numerals - some ids begin with a 0, other with 1 or 2.

R truncates the first 0 (012345678 becomes 12345678) which leads to problems when using this ID to merge another table.

Can someone give me a hint how to solve the problem?


Solution

  • As said in Ben's answer, colClasses is the easier way to do it. Here is an example:

    read.table(text = 'col1 col2
               0012 0001245',
               head=T,
               colClasses=c('character','numeric'))
    
      col1 col2
    1 0012 1245      ## col1 keep 00 but not col2