If you want to use purrr, you could do fil <- paste0("data",2004:2014,".txt") map_df(fil, read.table, .id = "fil")
to get everything in one data frame (I assume all files have the same structure) HTH Ulrik On Wed, 18 Jan 2017 at 16:10 PIKAL Petr <petr.pi...@precheza.cz> wrote: > Hi > > Let me make some assumptions. Your data are stored as *txt files somewhere. > > I would start with vector of file names > > fil<-paste0("data",2004:2014,".txt") > > fil > [1] "data2004.txt" "data2005.txt" "data2006.txt" "data2007.txt" > "data2008.txt" > [6] "data2009.txt" "data2010.txt" "data2011.txt" "data2012.txt" > "data2013.txt" > [11] "data2014.txt" > > than I would read my files into predefined list > > mylist<-vector(length=11, mode="list") > > You can add names to this list by > names(mylist) <- fil > > Than simple cycle > > for (i in seq_along(fil)) { > > mylist[[i]] <- read.table(fil[i]) > > ... you could also do some polishing of single files here > } > > Now you have list of data frames and you can do many operations on this > whole list instead on separate data frames. > > Further operations depend on structure of your data frames and your exact > intention what do you want to do with them. > > I wonder why merge is appropriate if you have separate data for each year. > Why not to use rbind followed by aggregate. > > But here I am fishing in really murky water. > > Cheers > Petr > > > > -----Original Message----- > > From: R-help [mailto:r-help-boun...@r-project.org] On Behalf Of Brandon > > Payne > > Sent: Wednesday, January 18, 2017 10:57 AM > > To: r-help@r-project.org > > Subject: [R] can this be simplified with purrr:map or mapply? > > > > I can't get my head around the *apply family of functions, > > surely there's a better way than what I have. > > I've tried using paste0 on the years, but then I have lists of strings, > not > > data frames. > > > > `realList<-paste0("exp",as.character(2004:2014),"s")` > > > > I can't seem to convert these lists of strings to references to data > frames. > > > > years<-c(2004:2014) > > framesEXP<- > > list(exp2004s,exp2005s,exp2006s,exp2007s,exp2008s,exp2009s,exp2011s,ex > > p2010s,exp2012s,exp2013s,exp2014s) > > > > framesFAM<- > > list(fam2004s,fam2005s,fam2006s,fam2007s,fam2008s,fam2009s,fam2011s,fa > > m2010s,fam2012s,fam2013s,fam2014s) > > > > data2004<<-merge(exp2004s,fam2004s, by="HHNUM") > > data2005<<-merge(exp2005s,fam2005s, by="HHNUM") > > data2006<<-merge(exp2006s,fam2006s, by="HHNUM") > > data2007<<-merge(exp2007s,fam2007s, by="HHNUM") > > data2008<<-merge(exp2008s,fam2008s, by="HHNUM") > > data2009<<-merge(exp2009s,fam2009s, by="HHNUM") > > data2010<<-merge(exp2010s,fam2010s, by="HHNUM") > > data2011<<-merge(exp2011s,fam2011s, by="HHNUM") > > data2012<<-merge(exp2012s,fam2012s, by="HHNUM") > > data2013<<-merge(exp2013s,fam2013s, by="HHNUM") > > data2014<<-merge(exp2014s,fam2014s, by="HHNUM") > > > > dput(data2004, file="../dataframes/data2004.txt") > > dput(data2005, file="../dataframes/data2005.txt") > > dput(data2006, file="../dataframes/data2006.txt") > > dput(data2007, file="../dataframes/data2007.txt") > > dput(data2008, file="../dataframes/data2008.txt") > > dput(data2009, file="../dataframes/data2009.txt") > > dput(data2010, file="../dataframes/data2010.txt") > > dput(data2011, file="../dataframes/data2011.txt") > > dput(data2012, file="../dataframes/data2012.txt") > > dput(data2013, file="../dataframes/data2013.txt") > > dput(data2014, file="../dataframes/data2014.txt") > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > > 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. > > ________________________________ > Tento e-mail a jakékoliv k němu připojené dokumenty jsou důvěrné a jsou > určeny pouze jeho adresátům. > Jestliže jste obdržel(a) tento e-mail omylem, informujte laskavě > neprodleně jeho odesílatele. Obsah tohoto emailu i s přílohami a jeho kopie > vymažte ze svého systému. > Nejste-li zamýšleným adresátem tohoto emailu, nejste oprávněni tento email > jakkoliv užívat, rozšiřovat, kopírovat či zveřejňovat. > Odesílatel e-mailu neodpovídá za eventuální škodu způsobenou modifikacemi > či zpožděním přenosu e-mailu. > > V případě, že je tento e-mail součástí obchodního jednání: > - vyhrazuje si odesílatel právo ukončit kdykoliv jednání o uzavření > smlouvy, a to z jakéhokoliv důvodu i bez uvedení důvodu. > - a obsahuje-li nabídku, je adresát oprávněn nabídku bezodkladně přijmout; > Odesílatel tohoto e-mailu (nabídky) vylučuje přijetí nabídky ze strany > příjemce s dodatkem či odchylkou. > - trvá odesílatel na tom, že příslušná smlouva je uzavřena teprve > výslovným dosažením shody na všech jejích náležitostech. > - odesílatel tohoto emailu informuje, že není oprávněn uzavírat za > společnost žádné smlouvy s výjimkou případů, kdy k tomu byl písemně zmocněn > nebo písemně pověřen a takové pověření nebo plná moc byly adresátovi tohoto > emailu případně osobě, kterou adresát zastupuje, předloženy nebo jejich > existence je adresátovi či osobě jím zastoupené známá. > > This e-mail and any documents attached to it may be confidential and are > intended only for its intended recipients. > If you received this e-mail by mistake, please immediately inform its > sender. Delete the contents of this e-mail with all attachments and its > copies from your system. > If you are not the intended recipient of this e-mail, you are not > authorized to use, disseminate, copy or disclose this e-mail in any manner. > The sender of this e-mail shall not be liable for any possible damage > caused by modifications of the e-mail or by delay with transfer of the > email. > > In case that this e-mail forms part of business dealings: > - the sender reserves the right to end negotiations about entering into a > contract in any time, for any reason, and without stating any reasoning. > - if the e-mail contains an offer, the recipient is entitled to > immediately accept such offer; The sender of this e-mail (offer) excludes > any acceptance of the offer on the part of the recipient containing any > amendment or variation. > - the sender insists on that the respective contract is concluded only > upon an express mutual agreement on all its aspects. > - the sender of this e-mail informs that he/she is not authorized to enter > into any contracts on behalf of the company except for cases in which > he/she is expressly authorized to do so in writing, and such authorization > or power of attorney is submitted to the recipient or the person > represented by the recipient, or the existence of such authorization is > known to the recipient of the person represented by the recipient. > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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. [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.