This solution uses strapply in gsubfn. It assumes the timepoints are 1, 2, 3, ... (although later we remove this restriction just in case).
The first line reads in myfile. The second line reads the numeric rows into matrix s. The third line reads in the column names. The fourth line converts to data frame and adds the Timepoint column numbering the first data set 1, the second 2, etc. (also known as long form) and the fifth line is the result. library(gsubfn) L <- readLines("myfile") s <- strapply(L, "^([0-9]+) +([0-9.]+) +([0-9.]+) *$", c, simplify = rbind) colnames(s) <- c(read.table("myfile", FALSE, nrow = 1, skip = 1, as.is = TRUE)) DF <- transform(s, Timepoint = cumsum(DF$ObjectNumber == 1)) split(DF[-4], DF[4]) If the timepoints are not necessarily 1, 2, 3, ... then replace the last line with this (which extracts the timepoints and assigns them): Timepoint <- c(strapply(L, "Timepoint *([0-9]+)", as.numeric, simplify = rbind)) DF$Timepoint <- Timepoint[DF$Timepoint] split(DF[-4], DF[4]) On Sat, Oct 24, 2009 at 11:31 PM, delnatan <delna...@gmail.com> wrote: > > Hi, > I'm having difficulty importing my textfile that looks something like this: > > #begin text file > Timepoint 1 > ObjectNumber Volume SurfaceArea > 1 5.3 9.7 > 2 4.9 8.3 > 3 5.0 9.1 > 4 3.5 7.8 > > Timepoint 2 > ObjectNumber Volume SurfaceArea > 1 5.1 9.0 > 2 4.7 8.9 > 3 4.3 8.3 > 4 4.2 7.9 > > ... #goes on to Timepoint 80 > > How would I import this data into a list containing data.frame for each > timepoint? > I'd like my data to be organized like this: > >>myList > [[1]] > ObjectNumber Volume SurfaceArea > 1 1 5.3 9.7 > 2 2 4.9 8.3 > 3 3 5.0 9.1 > 4 4 3.5 7.8 > > [[2]] > ObjectNumber Volume SurfaceArea > 1 1 5.1 9.0 > 2 2 4.7 8.9 > 3 3 4.3 8.3 > 4 4 4.2 7.9 > > -Daniel > -- > View this message in context: > http://www.nabble.com/Importing-data-from-text-file-with-mixed-format-tp26045031p26045031.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > 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. > ______________________________________________ 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.