Hi,
mapply(`[`,mylist,list(1,2,0),SIMPLIFY=FALSE) #[[1]] # a #1 1 #2 2 #[[2]] # b #1 5 #2 6 #[[3]] #data frame with 0 columns and 2 rows A.K. ----- Original Message ----- From: Dimitri Liakhovitski <[email protected]> To: r-help <[email protected]> Cc: Sent: Tuesday, February 12, 2013 4:33 PM Subject: [R] grabbing from elements of a list without a loop Hello! # I have a list with several data frames: mylist<-list(data.frame(a=1:2,b=2:3), data.frame(a=3:4,b=5:6),data.frame(a=7:8,b=9:10)) (mylist) # I want to grab only one specific column from each list element neededcolumns<-c(1,2,0) # number of the column I need from each element of the list # Below, I am doing it using a loop: newlist<-NULL for(i in 1:length(mylist) ) { newlist[[i]]<-mylist[[i]] [neededcolumns[i]] } newlist<-do.call(cbind,newlist) (newlist) I was wondering if there is any way to avoid the loop above and make it faster. In reality, I have a much longer list, each of my data frames is much larger and I have to do it MANY-MANY times. Thanks a lot! Dimitri Liakhovitski gfk.com <http://marketfusionanalytics.com/> [[alternative HTML version deleted]] ______________________________________________ [email protected] 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. ______________________________________________ [email protected] 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.

