I have about 100 dataset pairs that need to be merged into single data sets, I have looked at posts that show how to merge many data sets together at once (e.g., here and here), but my issue is unique. My real-world data are stored on my hard drive and are similarly named (e.g., household2010, household2011, household2012 and person2010, person2011, person2012. They don't need to be loaded into the global environment.Example below.
Working data:
library(tidyverse)
household2010 <- tribble(
~id, ~var2, ~var3, ~var4, ~var5,
"1",   "1",   "1",   "a",   "d",
"2",   "2",   "2",   "b",   "e",
"3",   "3",   "3",   "c",   "f"
)
person2010 <- tribble(
~id, ~var6, ~var7,
"1",   "1",   "1",
"2",   "2",   "2",
"3",   "3",   "3",
"4",   "4",   "4"
)
household2011 <- tribble(
~id, ~var8, ~var9, ~var10,
"1",   "1",   "1",    "1",
"2",   "2",   "2",    "2",
"3",   "3",   "3",    "3",
"4",   "4",   "4",    "4"
)
person2011 <- tribble(
~id, ~var11, ~var12, ~var13,
"1",   "1",   "1",    "1",
"2",   "2",   "2",    "2",
"3",   "3",   "3",    "3",
"4",   "4",   "4",    "4",
"5",   "5",   "5",    "5"
 )
I need to merge household2010 with person2010 and create a new dataset called hhperson2010. I need to do this to household2011 and person2011 too. Individually  I could do:
hhperson2010 <- left_join(household2010, person2010, by = "id")
hhperson2011 <- left_join(household2011, person2011, by = "id")
This gets clunky when I have over a 100 data pairs. Can I use lapply to have it go through a list of the data sets and merge? Something like:
dflist1 <- list(household2010, household2011)
dflist2 <- list(person2011,    person2011)
lapply(function(x) left_join(dflist, dflist2, by = "id")
 
     
     
     
    