I will post the whole function, but I believe the problem is in the 3th part. The issue is that oilDF has different number of rows than oilDF2.
Thank you, Rui myScan <- function(dirPath, num) { #dirPath is the name of the directory where we want to apply the function. It should be called from the immediate above level without the last 3 characters. For example dirPath="oil_0" #num is the mussel number #Heart rate startPath=getwd() workPath=paste(startPath,"/", dirPath,"_HR", sep="") setwd(workPath) temp=dir() d=sort(temp) oilDF=read.table (d[1], header=TRUE) oilDF=data.frame(oilDF[,1], oilDF[,2], oilDF[,num+2]) for(i in 2:length(d)) { temp <- read.table(d[i], header=TRUE) temp=data.frame(temp[,1], temp[,2], temp[,num+2]) colnames(temp) <- colnames(oilDF) oilDF=rbind(oilDF,temp) } setwd(startPath) #Valve Gape workPath=paste(startPath,"/", dirPath,"_VG", sep="") setwd(workPath) temp=dir() d=sort(temp) oilDF2=read.table (d[1], header=FALSE) oilDF2=data.frame(oilDF2[,1],oilDF2[,2],oilDF2[,num+3]) for(i in 2:length(d)) { temp <- read.table(d[i], header=FALSE) temp=data.frame(temp[,1], temp[,2], temp[,num+3]) colnames(temp) <- colnames(oilDF2) oilDF2=rbind(oilDF2,temp) } #Pack both signals in a vector of dataframes for each Mussel. ds <- vector("list", 2) timeHR = as.numeric(strptime(paste(oilDF[,1],oilDF[,2]), "%m/%d/%y %H:%M:%OS")) timeVG = as.numeric(strptime(paste(oilDF2[,1],oilDF2[,2]), "%d/%m/%y %H:%M:%OS")) ds[[1]] <- data.frame(timeHR,oilDF[,3]) ds[[2]] <- data.frame(timeVG,oilDF2[,3]) write.csv(ds,paste(startPath, "/", "mussel_", i, dirPath, ".csv", sep="")) return(ds) } > Date: Sun, 22 May 2011 11:33:38 -0700 > Subject: Re: [R] How to intantiate a list of data.frames? > From: jwiley.ps...@gmail.com > To: ruimax...@hotmail.com > CC: r-help@r-project.org > > Hi Rui, > > data frames must have the same number of rows, but two different data > frames stored within a list do not need to have the same number of > rows. Can you please post the code that is giving the error? > > Josh > > On Sun, May 22, 2011 at 9:41 AM, Rui Maximo <ruimax...@hotmail.com> wrote: > > Hi Josh, > > > > Sorry, your examples have equal number of rows in both df and df2. > > In my situation they haven't. > > Strangely, your solution have worked only when I am copy post the code into > > the command line. > > If I use the code inside of a function I get an error at: > > return(ds) > > ERROR: arguments imply differing number of rows > > > > Thanks, > > Rui > > > >> Date: Sat, 21 May 2011 11:46:05 -0700 > >> Subject: Re: [R] How to intantiate a list of data.frames? > >> From: jwiley.ps...@gmail.com > >> To: ruimax...@hotmail.com > >> CC: r-help@r-project.org > >> > >> Hi Rui, > >> > >> Here is one option: > >> > >> ds <- vector("list", 6) > >> for(i in 1:6) ds[[i]] <- list(df = mtcars[, c(i, i + 2)], df2 = > >> mtcars[, c(i, i + 2)] + 10) > >> > >> another could be: > >> > >> altds <- lapply(1:6, function(x) { > >> list(df = mtcars[, c(x, x + 2)], df2 = mtcars[, c(x, x + 2)] + 10) > >> }) > >> > >> all.equal(ds, altds) > >> > >> For some documentation, see > >> > >> ?vector > >> ?lapply > >> > >> Cheers, > >> > >> Josh > >> > >> On Sat, May 21, 2011 at 10:47 AM, Rui Maximo <ruimax...@hotmail.com> > >> wrote: > >> > > >> > Hello, > >> > > >> > I am newbie to R and I want to do this: > >> > > >> > for(i in 1:6) > >> > { > >> > ds[i] <- list(df=data.frame(oilDF[,1],oilDF[,i+2]), > >> > df2=data.frame(oilDF2[,1],oilDF2[,i+2])) > >> > } > >> > > >> > #oilDF and oilDF2 are 2 data frames with several columns. They have > >> > different number of rows > >> > > >> > #I want to have for example ds[1]$df, ds[1]$df2 with the respective > >> > data.frames. > >> > #How can I instantiate a list of data.frames pairs with different number > >> > of rows? > >> > > >> > Thank you, > >> > Rui > >> > > >> > [[alternative HTML version deleted]] > >> > > >> > ______________________________________________ > >> > 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. > >> > > >> > >> > >> > >> -- > >> Joshua Wiley > >> Ph.D. Student, Health Psychology > >> University of California, Los Angeles > >> http://www.joshuawiley.com/ > > > > > > -- > Joshua Wiley > Ph.D. Student, Health Psychology > University of California, Los Angeles > http://www.joshuawiley.com/ [[alternative HTML version deleted]] ______________________________________________ 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.