Thank you, David. I missed the key detail. Then Arun's option doesn't work as I need to parametrise needed columns (they will be a vector). Dimitri
On Tue, Feb 12, 2013 at 6:04 PM, David Winsemius <dwinsem...@comcast.net>wrote: > > On Feb 12, 2013, at 3:01 PM, Dimitri Liakhovitski wrote: > > > Arun, do you know why the first line works and the second doesn't? > > newlist<-mapply(`[`,mylist,list(1,2,0),SIMPLIFY=FALSE) # it works > > neededcolumns<-c(1,2,0) # it does not work > > newlist<-mapply(`[`,mylist,list(neededcolumns),SIMPLIFY=FALSE) > > > list(c(1,2,3)) > [[1]] > [1] 1 2 3 > > > list(1,2,3) > [[1]] > [1] 1 > > [[2]] > [1] 2 > > [[3]] > [1] 3 > > > -- > David. > > Dimitri > > On Tue, Feb 12, 2013 at 5:08 PM, arun <smartpink...@yahoo.com> wrote: > > > >> 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 <dimitri.liakhovit...@gmail.com> > >> To: r-help <r-help@r-project.org> > >> 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]] > >> > >> ______________________________________________ > >> 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<http://www.r-project.org/posting-guide.html> > <http://www.r-project.org/posting-guide.html> > >> and provide commented, minimal, self-contained, reproducible code. > >> > >> > > > > > > -- > > Dimitri Liakhovitski > > gfk.com <http://marketfusionanalytics.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<http://www.r-project.org/posting-guide.html> > > and provide commented, minimal, self-contained, reproducible code. > > David Winsemius > Alameda, CA, USA > > -- Dimitri Liakhovitski gfk.com <http://marketfusionanalytics.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.