title: tidyverse: matching specific dates to event periods
body: <p>I've got dates that I want to match with events for which I only have the start date.  As a simplified reprex, say I'd like to figure out who was president during certain events, but I only have inauguration dates.</p>
  
  <pre><code>pres &lt;- data.frame(pres = c("Ronald Reagan", "George H. W. Bush", 
                              "Bill Clinton", "George W. Bush", "Barack 
                               Obama", "Donald Trump"), 
                       inaugdate = structure(c(4037, 6959, 8420, 11342, 14264, 
                                               17186), class = "Date"))
  
  events &lt;- data.frame(event = c("Challenger explosion", "Chernobyl 
                                  explosion", "Hurricane Katrina", "9-11"), 
                        date = structure(c(5871, 5959, 13024, 11576), class = "Date"))
  </code></pre>
  
  <p>Obviously, a simple left_join won't work because the events didn't happen on inauguration days.</p>
  
  <pre><code>events %&gt;%
        left_join(pres, by = c("date" = "inaugdate"))
  </code></pre>
  
  <p>In Excel, vlookup used to give you an option of true (match closest previous) or false (match exact).  Is there something similar in the tidyverse?</p>