title: dplyr assign value to column based on multiple filtering
body: <p>I have a dataframe that contains the following columns: <code>city</code>, <code>amenity</code>, <code>date</code> and I want to add a column <code>last</code> based on grouping together <code>city</code> and <code>amenity</code>, then taking the most recent date.</p>
  
  <p>input dataframe:</p>
  
  <pre><code>| city      | amenity       | date                |
  |-----------|---------------|---------------------|
  | rome      | stadium       | 2020-02-25 19:10:40 | 
  | new york  | concert hall  | 2020-03-09 18:15:29 |
  | rome      | stadium       | 2020-02-29 15:07:23 |
  | stockholm | swimming pool | 2020-03-02 11:23:54 |
  | new york  | skate park    | 2020-03-12 13:41:35 |
  | stockholm | swimming pool | 2020-03-13 17:54:23 |
  | stockholm | swimming pool | 2020-03-18 19:18:29 |
  </code></pre>
  
  <p>desired output:</p>
  
  <pre><code>| city      | amenity       | date                | last |
  |-----------|---------------|---------------------|------|
  | rome      | stadium       | 2020-02-25 19:10:40 |      |
  | new york  | concert hall  | 2020-03-09 18:15:29 | TRUE |
  | rome      | stadium       | 2020-02-29 15:07:23 | TRUE |
  | stockholm | swimming pool | 2020-03-02 11:23:54 |      |
  | new york  | skate park    | 2020-03-12 13:41:35 | TRUE |
  | stockholm | swimming pool | 2020-03-13 17:54:23 |      |
  | stockholm | swimming pool | 2020-03-18 19:18:29 | TRUE |
  </code></pre>
  
  <hr>
  
  <p><strong>Data</strong>:</p>
  
  <pre><code>df &lt;- structure(list(city = c("rome", "newyork", "rome", "stockholm", 
  "newyork", "stockholm", "stockholm"), amenity = c("stadium", 
  "concert_hall", "stadium", "swimming_pool", "skate_park", "swimming_pool", 
  "swimming_pool"), date = structure(c(1582632640, 1583752529, 
  1582963643, 1583123034, 1583995295, 1584096863, 1584533909), class = c("POSIXct", 
  "POSIXt"), tzone = "")), row.names = c(NA, -7L), class = "data.frame")
  </code></pre>