[R] Reading data with blank elements

Philipp Pagel philipp.pagel.lists at t-online.de
Fri Jul 21 15:34:36 CEST 2006


On Fri, Jul 21, 2006 at 05:43:03AM -0700, Ahamarshan jn wrote:
>  I have a dataset saved in *.csv format, that contains

> BS00,-0.084,0.0136,-0.1569,-0.6484,1.103,1.7859,0.40287,0.5368,0.08461,-0.1935,-0.147974,0.30685
> BS01,0.491270283,0.875826172,,,,,,,,,,
> BS02,0.090794476,0.225858954,,,0.32643,0.34317,0.133145295,,,0.115832599,0.47636458,
> BS03,0.019828221,-0.095735935,-0.122767219,-0.0676,0.002533,-0.1510361,0.736247,2.053192,-0.423658,0.4591219,1.1245015,
> BS04,-0.435189342,-0.041595955,-0.781281128,-1.923036,-3.230167102,,,,0.152322609,-1.495513519,,

> person.data<-read.table("datafile.csv",header=TRUE,sep=',',row.names=1)
> Error in scan (file = file, what = what, sep = sep,
> quote = quote, dec = dec,  : 
>         line 1919 did not have 13 elements
> Execution halted "

R does handle empty elements fine. The error message you quote occurs if
a row does not contain the expected number of elements (empty or not.)

Did you have a look at row 1919? Does it really contain the same number
of separators (commas) as the other ones?

Some programs handle empty elements at the end of a row in a 'lazy' way
and simply ommit them. If this is the case you can use the option
'fill=TRUE' to tell read.table that you want it to silently pad short
rows with empty elements.

Another 'popular' reason for funny errors with read.table is the
unexpected occurence of quotation or comment characters in the data...


Dr. Philipp Pagel                            Tel.  +49-8161-71 2131
Dept. of Genome Oriented Bioinformatics      Fax.  +49-8161-71 2186
Technical University of Munich
Science Center Weihenstephan
85350 Freising, Germany


Institute for Bioinformatics / MIPS          Tel.  +49-89-3187 3675
GSF - National Research Center               Fax.  +49-89-3187 3585
      for Environment and Health
Ingolstädter Landstrasse 1
85764 Neuherberg, Germany

More information about the R-help mailing list