Thanks to everybody who answered with suggestions (David Wolfskill, Stephen Sefick, Jim Holtman, Gabor Grothendieck, and Phil Spector).
Beside the obvious end-of-the-day mixup ("int" in lieu of "integer"), I was not aware of the existence of a "NULL" class - which proved pretty useful in this case. Thanks again for the help from this great list! Best, Giovanni On Wed, 2011-03-09 at 15:10 -0800, David Wolfskill wrote: > On Wed, Mar 09, 2011 at 04:32:29PM -0600, Giovanni Petris wrote: > > > > Hello, > > > > I have a file that looks like this: > > > > Date,Hour,DA_DMD,DMD,DA_RTP,RTP,, > > 1/1/2006,1,3393.9,3412,76.65,105.04,, > > 1/1/2006,2,3173.3,3202,69.20,67.67,, > > 1/1/2006,3,3040.0,3051,69.20,77.67,, > > 1/1/2006,4,2998.2,2979,67.32,69.10,, > > 1/1/2006,5,3005.8,2958,65.20,68.34,, > > > > where the ',' is the separator and I tried to read it into R, but... > > > > > y <- read.csv("Data/Data_tmp.csv", header = FALSE, skip = 1, > > + colClasses = c("character", "int", rep("double", 4)), > > + col.names = c("Date","Hour","DA_DMD","DMD","DA_RTP", "RTP"), > > + flush = TRUE) > > Error in read.table(file = file, header = header, sep = sep, quote = quote, > > : > > more columns than column names > > > > count.fields() gives me 8 fields per line, so I tried other variations, > > like the following, with two fictitious extra fields, but... > >... > > Error in methods::as(data[[i]], colClasses[i]) : > > no method or default for coercing "character" to "int" > > > > Could anybody please tell me what I am doing wrong and how I could read > > my data into R? > > I copied the data locally, then I read it using: > > > y <- read.csv("Data_tmp.csv", header = TRUE, colClasses = c("character", > > "integer", rep("double", 4), "NULL", "NULL")) > > which yields: > > > y > Date Hour DA_DMD DMD DA_RTP RTP > 1 1/1/2006 1 3393.9 3412 76.65 105.04 > 2 1/1/2006 2 3173.3 3202 69.20 67.67 > 3 1/1/2006 3 3040.0 3051 69.20 77.67 > 4 1/1/2006 4 2998.2 2979 67.32 69.10 > 5 1/1/2006 5 3005.8 2958 65.20 68.34 > > > > Is that what you had in mind? > > Issues I tried to address: > * The class is "integer", not "int". > * I used "NULL" class to refer to columns that are to be skipped. > * I made use of the headers, rather than skipping them & re-coding their > content in the read.csv() invocation. > > Peace, > david ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.